我制作了一个小型WPF应用程序。数据存储在底层DBMS中,并通过DataTables上的数据绑定显示在datagrids中。要检索我的数据,我使用拟合tableadapters。
我生成了我的DataSet并输入了Constraints。我编译它,运行它并喜欢它,因为它完成了预期的一切。
我的问题是:
今天我的Dialog Designer开始表现得非常奇怪。它开始抱怨未处理的InvalidConstraintException:
无法清除表X,因为ForeignKeyConstraint FK_X_Y强制执行约束并且Y中有子行。
关系x是一个“客户”表,包含:
PKey CustomerID
和其他2个属性
关系y是一个表格,显示客户和序列号之间的1-y关系:
PKey SerialNumber
PKey FKey CustomerID(更新级联/删除级联)
如上所述,应用程序本身正在按预期工作,约束处理效果很好。删除客户时,所有序列号也会被删除。在编辑时,所有引用都会更新。如上所述,按预期工作。
但是当我打开我的Designer时会弹出这个异常。
答案 0 :(得分:0)
您不应该从View公开与DBMS的直接关系。 View应该只定义它的外观,然后在ViewModel中定义数据源。