Tenir compte d'une table SQL Server contenant:ADO.NET: Ajout de DataRelation à un DataSet; qui est parent et qui est enfant?
ID ParentID Text
=== ========= =============
1 (null) Product
2 (null) Applications
3 1 Background
4 1 Details
5 2 Mobile
i remplir un SqlDataSet avec la table, et maintenant je veux ajouter la relation parent-enfant à l'DataSet:
public DataRelation(
string relationName,
DataColumn parentColumn,
DataColumn childColumn,
bool createConstraints
)
Maintenant this guy utilise:
DataRelation relation = newDataRelation("ParentChild",
ds.Tables[0].Columns["ID"], //parentColumn
ds.Tables[0].Columns["ParentID"] //childColumn,
true //createConstraints
);
Mais quand je fais ce que je reçois l'exception:
This constraint cannot be enabled
as not all values have corresponding parent values.
Les gens ont suggéré de passer faux pour createConstraints
; mais alors pourquoi ça marche pour lui?
Et qu'est-ce qu'un enfant et qu'est-ce qu'un parent de toute façon? j'aurais pensé la colonne enfant est la colonne qui doit pointer à un parent et colonne parent est la chose qui fait le pointage, ce qui inverse la relation:
DataRelation relation = newDataRelation("ParentChild",
ds.Tables[0].Columns["ParentID"], //parentColumn
ds.Tables[0].Columns["ID"], //childColumn
true //createConstraints
);
Alors, qui est-il? Pourquoi son travail? Qu'est-ce qui est à l'exception? Pourquoi peut-il créer la contrainte quand il a des zéros?
Dieu, il fait chaud ici.
C'est exactement ce que je devais savoir - MSDN ne me donner une réponse claire , comme d'habitude. Tyvm! –