2009-10-28 69 views
1

我在某处有20个左右的表,我正在使用。我可以更新用户表,但是,当我尝试更新我的地址表时,没有任何反应。我没有收到一个异常,该方法看起来像它执行正常,但当我检查我的数据时,值仍然是相同的。Linq到Sql更新不起作用

我在想这与我将数据库从服务器下移出到本地SQL lite实例的事实有关。我改变了配置中的连接字符串,并认为它会照顾到问题(正如我所说的,我仍然可以使用linq从所有表中进行选择)。有没有人遇到过这种情况,或者对可能发生的事情有一些了解?

编辑1 - 我不熟悉linq重定位数据库。我知道SQLMETAL在运行时会删除我在数据目录中完成的所有定制。只是在配置工作中更改连接或每次数据库移动时都必须使用SQLMETAL(结构不变)

+0

您可以在SubmitChanges()之前验证更改集是否包含您期望的更新? – 2009-10-28 19:34:21

+0

是的。我检查了这些值,它确实包含了我期待的更改。我也直接在数据库中更改了一个地址值,它出现在我的页面上,所以我正在打击正确的实例。 – jimbo 2009-10-28 19:48:56

回答

0

当我这样做时,我不得不手动修改构造函数以使用不同的连接Visual Studio为您的数据库实例生成的文件中的字符串。我遇到了同样的问题,并为我解决了这个问题。

+0

我可以问你做了哪些修改?我已经在运行时在select和update两个参数上考虑了datacontext的连接字符串,它看起来是正确的。 – jimbo 2009-10-29 12:42:06