2009-04-17 12 views
0

Also habe ich einen WCF-Dienst, die ein Ergebnis aus einer Datenbank festgelegt wird (nicht SQL) - I DataTable, diese Daten als string[][] bekommen können, usw.Konsumieren Datenbank Resultsets mit Silverlight Datagrid

kann ich nicht Verwenden Sie LINQ oder ADO.NET Entity Framework sehr einfach, da es nicht von einer SQL DB kommt.

Also meine Frage ist:

  • Was ist der beste Weg, um diese Daten für die Übertragung über den Draht zu verpacken? Ich kann jede Datenstruktur verwenden, die in Silverlight unterstützt wird.

  • Was ist eine gute Möglichkeit, es zu konsumieren?

  • Gibt es eine einfache Möglichkeit, es mit einem DataGrid zu verbinden?

Antwort

1
  1. Sie sollten Daten in Serviceeinheiten verpacken, die von Ihrem WCF-Dienst ausgesetzt sind.

  2. WCF grundlegende HTTP in SL2 Bindung, in SL3 haben Sie viele weitere Optionen

  3. <DataGrid ItemsSource="{Binding MyCollectionOfObjects}" />

0

Sorry, aber du machst es falsch.

Datensätze sind tot.
Datensätze sind die schlechtesten Praktiken.
Datensätze sind keine praktikable technische Lösung für irgendein Problem.

Für den Datenzugriff haben Sie mehrere Möglichkeiten:
1. Entity Framework (Microsoft)
2. Linq to SQL- (Microsoft)
3. NHibernate/Active (Open Source)
4. Viele weitere Frameworks, die in die Kategorie von ORMs (Object Relational Mapper) oder Persistence Layers fallen.

Um auf den Microsoft Data Plattformen erlauben Sie mir, die vorschlagen loszulegen "How Do I" Microsoft Data Videos @http://msdn.microsoft.com/en-us/data/cc300162.aspx

Für die Datenübertragung über den Draht haben Sie ein paar Optionen bekam:
1. Nicht Webservices - die sind auch tot. Traurig, ich weiß.
2. WCF
3. ADO.Net Data Service
4. RIA Services

Es gibt Nachteile und Profis für jede mögliche ORM-Framework Auswahl und Kommunikationsrahmen. Die Leute werden sehr religiös bei der Wahl ihrer unterstützenden Rahmenbedingungen, also werde ich vermeiden, in Empfehlungen zu gehen. Wählen Sie einfach die, die am besten für Sie funktioniert.
Und Nein, DataSets zählen nicht.

Verwandte Themen