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

ASP.NET LINQ to SQL SubmitChanges()不';t更新数据库,asp.net,linq-to-sql,Asp.net,Linq To Sql,在我的第二个ASP.NETMVC项目中,我面临一个非常奇怪的问题:当我调用DataContext类的SubmitChanges方法时,数据库中没有任何更新。这很奇怪,因为我的第一个项目一切正常 我使用的是在SQLServerManagementStudio中创建的远程数据库,我尝试在那里执行一些查询,在VisualStudio2010中(我在那里连接到数据库),它们都可以工作 问题可能隐藏在哪里 DBDataContext DB = new DBDataContext(); var myuser

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

我使用的是在SQLServerManagementStudio中创建的远程数据库,我尝试在那里执行一些查询,在VisualStudio2010中(我在那里连接到数据库),它们都可以工作

问题可能隐藏在哪里

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

这是令人尴尬的:我确实没有主键。现在它工作了


谢谢大家

可能没有任何东西要提交到数据库?SubmitChanges()只会提交修改过的或新的数据,如果您没有,则不会有任何持久的效果


您可能想阅读更多关于Linq的内容,或者想阅读类似的书籍。

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

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

表,键:):)


在表中插入键

你能出示一些密码吗?你确定原始年龄还不是45岁吗?如果您将该值设置为现有值,那么它可能不会提交并尝试在MVC之外使用相同的datacontext,因此您可以隔离贡献因素I创建的linq to sql类,如教程中所述。。。我怎样才能检查它们是否连接?天哪!这是令人尴尬的:我确实没有主键。非常感谢。啊!这一次也让我失望了。这么简单的一件小事,在桌子上就忘了。