我使用以下代码更新表格中的记录:
var usr = test.Data.user.SingleOrDefault(y => y.id == 1);
usr.name = "test";
usr.Save();
检索行完全有效,但是当我Save()时,我在文件database.cs第412行中得到NullReferenceException,这是以下代码:
Constraint c = new Constraint(ConstraintType.Where, tbl.PrimaryKey.Name)
{
ParameterValue = settings[tbl.PrimaryKey.Name],
ParameterName = tbl.PrimaryKey.Name,
ConstructionFragment = tbl.PrimaryKey.Name
};
tbl.PrimaryKey在这个地方是空的,我认为可能是问题所在。我在我的表的id字段上设置了主键。我也在Visual Studio 2010上使用git repo的最新版本。任何人都知道可能出现什么问题?
编辑:
通过在此主题中使用nosynchro的答案进行修复:
希望这也可以在git repo中修复。
答案 0 :(得分:0)
我是亚音速的新手,当我尝试更新从数据库检索到gridview的数据时,我遇到了同样的错误。我使用了一段来自本网站的代码。
代码:
Emptab emp = Emptab.FetchById(txtId.Text);
emp.Fname = txtFirstName.Text;
emp.Mname = txtMiddleName.Text;
.....
emp.Save();
这里,Emptab ==我的表的类,(Fname,Mname)==表的列名