I 2 Datentabellen mit folgenden Datensätze in -Datensatz habe:Wie Gruppierung nach Datatabelle mit Beziehung zwischen 2 Datentabellen definieren?
dtVariant:
Name Type status
Variant1 Add active
Variant2 Division active
dtSubVariant:
Name Type SubvariantName
Variant1 Add Sub1
Variant1 Add Sub2
Variant1 Add Sub3
Variant2 Division Sub1
Variant2 Division Sub2
Variant2 Division sub3
Variant2 Division sub4
Jetzt möchte ich Subvarianten Liste erhalten, indem Variante Typ und nur diese Varianten deren Status aktiv ist wie folgt:
Add:Sub1,Sub2,Sub3
Division:Sub1,Sub2,Sub3,Sub4
Hier habe ich die Beziehung zwischen Säulen bauen Name and Type
zwischen diesen zwei Datentabellen wie unten:
Ds1.Relations.Add("MyRelation", dtVariant, dtSubVariant, false);
Abfrage:
var data = (from c in Ds1.Tables["dtVariant"].AsEnumerable()
.where c.Field<string>("status")=="active"
group c by new { Type = c.Field<string>("Type") } into grp
select new
{
Type= grp.Key.Type,
Names=
from dp in c.GetChildRows("MyRelation")//Not getting this method
}).ToList();
Aber wenn Ich versuche, dies zu tun:
from dp in c.GetChildRows("MyRelation") //i am not getting this GetChildRows method.
Kann mir jemand dabei helfen ??
meine Frage aktualisiert. Vergessen, Statusfeld in Variante datatable.sorry –
einzuschließen Meine Antwort hat sich nicht geändert, weil basierend auf der Frage dies immer noch die Lösung ist, oyu möchte eine WHERE-Klausel nach dem AsEnumerable() hinzufügen, aber das löst noch Ihr Problem. – War