考虑包含SQL Server表:ADO.NET:将DataRelation添加到数据集;哪个是父母,哪个是孩子?
ID ParentID Text
=== ========= =============
1 (null) Product
2 (null) Applications
3 1 Background
4 1 Details
5 2 Mobile
我填与表SqlDataSet,现在我想的父子关系添加到DataSet:
public DataRelation(
string relationName,
DataColumn parentColumn,
DataColumn childColumn,
bool createConstraints
)
现在this guy用途:
DataRelation relation = newDataRelation("ParentChild",
ds.Tables[0].Columns["ID"], //parentColumn
ds.Tables[0].Columns["ParentID"] //childColumn,
true //createConstraints
);
但是当我做,我得到异常:
This constraint cannot be enabled
as not all values have corresponding parent values.
有人建议通过虚假createConstraints
;但为什么它对他有用?
什么是孩子,什么是父母呢?我本来以为子列是需要指向父列,父列是做指点,这将扭转关系的东西:
DataRelation relation = newDataRelation("ParentChild",
ds.Tables[0].Columns["ParentID"], //parentColumn
ds.Tables[0].Columns["ID"], //childColumn
true //createConstraints
);
因此,这是什么呢?为什么他的工作?有什么例外?为什么当他有空时他可以创造约束?
上帝在这里很热。
这正是我需要知道 - MSDN不会给我一个明确的答案, 照常。 tyvm! – 2012-04-27 14:28:52