Frage

Ich versuche, bestimmte Felder aus meiner Einheit zu wählen, um als Datenquelle für einen Datagridview verwendet werden, aber ich habe nicht in der Lage, damit es funktioniert. Ist so etwas möglich? Zum Beispiel habe ich einen Kunden, Unternehmen, das mehr entityreferences enthält. Ich mag Felder der Kunden Unternehmen zu übernehmen und aus dieser entityreferences und sie in der Datagridview angezeigt werden soll. Ich habe nicht in der Lage gewesen, mit einer Linq-Abfrage zu kommen, dies zu erreichen, und auch wenn Sie einfach die gesamte Einheit als Datenquelle verwenden, die Felder innerhalb der entityreferences werden nicht angezeigt. Jede Idee, was ich tue, falsch? Danke für die Hilfe.

War es hilfreich?

Lösung

from customer in context.customers
select new 
{
    Name = customer.Name,
    City = customer.Address.City
}

, die ein benutzerdefiniertes Objekt erstellen und Sie können die zweite Eigenschaft verweist auf ein Objekt Feld auf der primären Einheit sehen .. grundsätzlich verwandeln nur die Daten auf ein neues Objekt und binden das zählbare an das Netz erzeugt.

Sorry, wenn dies ein wenig murmelte ist, das Schreiben auf meinem Handy.

Andere Tipps

Caveat. Dies ist nicht mit Entity Framework Referenzen getestet

Bei der Verwendung von Objektdatenquellen Sie Eigenschaften von Objektreferenzen verweisen können, aber Sie müssen werfen das Objekt zuerst:

<asp:Label ID="lblCity" runat="server" Text='<%# ((Customer)Container.DataItem).Address.City%>'></asp:Label>

Könnte das Ihr Problem Eigenschaften der Entitätsverweise Zugriff werden?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top