ASP.NET LINQ to SQL SubmitChanges()不更新数据库

时间:2010-03-17 23:33:34

标签: asp.net linq-to-sql

在我的第二个ASP.NET MVC项目中,我遇到了一个非常奇怪的问题:当我调用DataContext类的SubmitChanges方法时,数据库中没有任何更新。这很奇怪,因为我的第一个项目一切正常。

我正在使用在Sql Server Management Studio中创建的远程数据库,我尝试在那里和Visual Studio 2010中进行一些查询(我与数据库建立连接),它们都可以工作。

问题可能隐藏在哪里?

DBDataContext DB = new DBDataContext();
var myuser = DB.Users.Single(u => u.ID == id);
myuser.Age = 45;
DB.SubmitChanges();

这很令人尴尬:D的确,我没有主键。现在它有效!

感谢大家!

4 个答案:

答案 0 :(得分:3)

表,KEY:)::):))

在表中插入KEY !!!!!

答案 1 :(得分:0)

也许没有什么可以提交到数据库? SubmitChanges()只会提交修改过的或新的数据,如果你没有,那么它就没有任何持久的效果。

您可能需要阅读ScottGu's series on Linq以了解更多关于Linq的内容,或者想要了解Linq in action这样的书。

答案 2 :(得分:0)

您正在修改的实体是否可能未连接到DataContext?这样可以防止它们导致数据库更新。

答案 3 :(得分:0)

我会检查你的连接字符串。您可能没有连接到您认为要连接的数据库。