更新后的主表从数据库获取PrimaryKey列的新值时使用:
ndaMasterAdapter.Update(dtChanges);
dtMasterTable.Merge(dtChanges);
它不会更新slave表中的ForeignKey。
更新\删除设置为级联的数据集关系属性中的规则:
.DeleteRule = global::System.Data.Rule.Cascade;
.UpdateRule = global::System.Data.Rule.Cascade;
插入命令(我使用npgsql for postgresql):
ndaMasterAdapter.InsertCommand = new Npgsql.NpgsqlCommand("insert into \"Test\".\"Master\" (master_text) values (:master_text) returning id, master_text;");
ndaMasterAdapter.InsertCommand.UpdatedRowSource = UpdateRowSource.Both;
ndaMasterAdapter.AcceptChangesDuringUpdate = false;