Database2Entities.SaveChanges() 不起作用

本文关键字:不起作用 SaveChanges Database2Entities | 更新日期: 2023-09-27 18:30:16

我有一个使用实体框架设置的.sdf databsae。我的代码如下。但是,当我尝试更新第一条记录时,它使用 console.writeline() 正确显示了这一点,但是当我在 Visual Studio 中"显示表数据"时,我可以看到原始值仍然存在,它没有更新:

static void Main(string[] args)
    {
        Database2Entities context = new Database2Entities();
        DbSet<Product> products = context.Products;
        foreach (var product in products)
        {
            Console.WriteLine(product.name);
        }
        Console.WriteLine("---");
        Product prod = products.First();
        prod.name = "Faux lion fur hat";
        context.SaveChanges();
        products = context.Products;
        foreach (var product in products)
        {
            Console.WriteLine(product.name);
        }
        Console.Read();
    }
/*Output:
gloves
scarves
coates
lionFurHat
boots
---
Faux lion fur hat //This doesn't show in the diagram.
scarves
coates
lionFurHat
boots*/

Database2Entities.SaveChanges() 不起作用

我不确定这是否是真正的问题,但也许是旧上下文。产品;再次被重新分配给相同的产品,请尝试使用不同的变量,例如

var productsUpdated=context.Products;

您也可以尝试刷新它

http://msdn.microsoft.com/en-us/library/bb503718.aspx

context.Refresh(RefreshMode.StoreWins, Products);