在标记要删除的行后尝试更新 DataTable 时,我遇到了一个奇怪的异常。看起来它正在验证我要删除的行中的数据。我能够成功保存同一行,为什么不让我删除它?
在 VS 2008 和 SQL Server CE 中使用 C#。
我的代码的基本部分(我希望):
var listDataTable = new booksDataSet.ListDataTable();
this.tableAdapterManager1.ListTableAdapter.Fill(listDataTable);
listDataTable.Rows[0].Delete();
this.tableAdapterManager1.ListTableAdapter.Update(listDataTable);
booksDataSet1.List.AcceptChanges(); // exception here
例外情况是: System.FormatException 未处理 Message="@p2 : foo - 输入字符串的格式不正确。" 源="系统.数据"
我已将其简化为一个非常简单的表: Id (PK, int, not null) Name (nvarchar(100), not null) Notes (nvarchar(4000), null)
我要删除的行(第一行)中的数据是 Name = "foo",所以它是正确的行,但为什么它在删除行之前关心数据是什么?