LINQ to SQL数据库行不更新

时间:2011-06-17 19:27:11

标签: c# .net asp.net database linq

我使用LINQ to SQL与我的数据库进行交互,我正在尝试执行以下操作来更新数据库中的单行:

DataClassesDataContext dataContext = new DataClassesDataContext();

TableName aRow = (from rows in dataContext.TableNames where rows.x == y select rows).Single();
aRow.attribute = "something";

dataContext.SubmitChanges();

不应该使用我对该行所做的更改来更新数据库吗? 还是有什么我想念的?

感谢您的帮助

3 个答案:

答案 0 :(得分:3)

要检查的另一件事:确保表有主键。

答案 1 :(得分:1)

要检查的几件事情:

  1. 您的代码段是否使用相同的DataContext,这意味着它不会从您实例化新DataContext个实例的不同方法中剪切和粘贴?
  2. 您的DataContext.ObjectTrackingEnabled属性是否设为true?它应该是默认值,但如果它是false,则您的DataContext将无法执行更新。

答案 2 :(得分:0)

该代码应该正常工作,因此它必须位于代码中的其他位置或数据库本身。

您是否检查过以确保要更新的列不是只读的? 如上所述,您使用的是交易吗?