C# ADO.NET在SQL Server 2008中更新表

C# ADO.NET在SQL Server 2008中更新表,c#,.net,sql,entity-framework,C#,.net,Sql,Entity Framework,我正在使用ADO.NET并尝试更新SQL Server 2008数据库表中的列值。但是,该值没有更新。即使在我用C代码调试它时它是更新的。这是我的密码: using (ADONETClass context = new ADONETClass()) { List<Invoices> list = context.Invoices.ToList<Invoices>(); foreach (Invoices b in list) { b.stat

我正在使用ADO.NET并尝试更新SQL Server 2008数据库表中的列值。但是,该值没有更新。即使在我用C代码调试它时它是更新的。这是我的密码:

using (ADONETClass context = new ADONETClass())
{
   List<Invoices> list = context.Invoices.ToList<Invoices>();
   foreach (Invoices b in list)
   {
      b.status = 0;
   }
}
使用(ADONETClass context=new ADONETClass())
{
List=context.Invoices.ToList();
foreach(列表中的发票b)
{
b、 状态=0;
}
}
现在我调试了代码,看到
context.Invoices.ToList()[0]。status
确实设置为零。但是当程序完成运行时,我打开了SQLServerManagementStudio,状态值仍然是0。不知道发生了什么事?我错过什么了吗

谢谢


Varun是否调用context.SaveChanges()?

是否调用context.SaveChanges()?

是否使用实体框架? 我想你错过了对context.SaveChanges的调用
在EntityFramework中,所有更改都只在内存中,在调用SaveChanges之前不会写入数据库

您使用的是EntityFramework吗? 我想你错过了对context.SaveChanges的调用
在EntityFramework中,所有更改都只在内存中,在调用SaveChanges之前不会写入数据库。不,对不起,我不会调用类似的调用。我现在就试试看会发生什么!谢谢这起了作用,解决了我的问题。顺便问一下,我从哪里可以得到这类信息?书籍/MSDN等。?谢谢您的帮助。@VVV,precision+视频教程等。。。但最重要的是谷歌。为每一位程序员提供源源不断的好东西;)不,对不起,我没有打那种电话。我现在就试试看会发生什么!谢谢这起了作用,解决了我的问题。顺便问一下,我从哪里可以得到这类信息?书籍/MSDN等。?谢谢您的帮助。@VVV,precision+视频教程等。。。但最重要的是谷歌。为每一位程序员提供源源不断的好东西;)如果您使用的是实体框架,为什么要将其标记为ado.net?经典的ado.net看起来完全不同,您需要不同的解决方案。那是什么呢?Ado.net还是EF?哦,好吧,我不知道!今天我写了我的第一个程序。我的C#项目包含一个文件Model1.edmx,它是ADO.NET实体数据模型。所以我认为这是ADO.NETEF是ADO.net之上的ORM。使用ado.net本身,您将需要编写实际的SQL查询、管理连接等。使用EF(和类似的ORM),您将重点放在逻辑部分—获取结果、管理关系,…,而较低级别的内容大部分时间对您隐藏。噢,谢谢Walter!事实上我还不知道!但现在知道很好。谢谢。如果您使用的是实体框架,为什么要将其标记为ado.net?经典的ado.net看起来完全不同,您需要不同的解决方案。那是什么呢?Ado.net还是EF?哦,好吧,我不知道!今天我写了我的第一个程序。我的C#项目包含一个文件Model1.edmx,它是ADO.NET实体数据模型。所以我认为这是ADO.NETEF是ADO.net之上的ORM。使用ado.net本身,您将需要编写实际的SQL查询、管理连接等。使用EF(和类似的ORM),您将重点放在逻辑部分—获取结果、管理关系,…,而较低级别的内容大部分时间对您隐藏。噢,谢谢Walter!事实上我还不知道!但现在知道很好。谢谢