我有以下代码。除更新外,插入和删除都有效。我使用SQL Server分析器跟踪它,发现没有发布SQL进行更新。我使用dt.Rows[0].RowState
进行了测试,其值为"已修改"。
using(var scope = new TransactionScope())
{
using (var con = new SqlConnection(ConnectionString))
{
con.Open();
var da = new SqlDataAdapter("select * from table", con);
var cb = new SqlCommandBuilder(da);
cb.ConflictOption = ConflictOption.OverwriteChanges;
da.UpdateCommand = cb.GetUpdateCommand();
da.InsertCommand = cb.GetInsertCommand();
da.DeleteCommand = cb.GetDeleteCommand();
da.UpdateBatchSize = 2000;
da.Update(dt);
}
scope.Complete();
}