实体框架更改未反映在SQL Server 2012 Express中

时间:2013-08-12 17:56:04

标签: sql-server entity-framework

我是实体框架的新手,我有一点问题,我找不到解决方案。我正在使用SQL Server 2012 Express,VS2012,AdventureWorks 2012,它是一个WPF应用程序。

我唯一想做的就是修改单元格并使用Management Studio查看数据库中的修改。

我在这里经历了很多问题并用Google搜索(每个人都指的是复制到输出目录选项),但我似乎仍然没有把它弄好。

我所做的是以下内容:

private AW_Entities context;
private List<Address> adresses;

context = new AW_Entities();
adresses = context.Addresses.OrderBy(x => x.City).ToList();

var currentAdress = context.Addresses.Find(1000);
currentAdress.City = currentAdress.City + " xxxx";

context.SaveChanges();

我的WPF应用程序显示它并显示没有错误,我的数据库没有反映任何更改。

我的“复制到输出目录选项”设置为“不复制”

我的连接字符串是

<connectionStrings>
    <add name="AW_Entities" 
         connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.\SQLEXPRESS;initial catalog=AdventureWorks2012;integrated security=True;MultipleActiveResultSets=True; App=EntityFramework&quot;" 
         providerName="System.Data.EntityClient" />
</connectionStrings>

提前谢谢!

1 个答案:

答案 0 :(得分:0)

您可以手动将实体状态设置为“已修改”:

context.Entry(adresses).State = EntityState.Modified;