[Disclaimer: Ich bin ASP.NET MVC Entwickler]Silverlight 4 WCF RIA Services und MVVM ist nicht so einfach
Hallo,
Ich bin mit der Umsetzung MVVM Muster für einige Best Practices suchen mit WCF RIA in Silverlight 4.
Ich bin nicht auf der Suche nach MEF von IoC zum Auffinden meiner ViewModels. Was ich gerne wissen würde ist, wie man MVVM-Muster mit Silverlight 4 und WCF RIA anwendet.
Ich möchte nicht andere Sachen wie Prism oder MVVM Light Toolkit verwenden. Ich habe viele Beispiele im Internet gefunden, die zeigen, wie wunderbar es ist, eine Datenquelle per Drag & Drop auf die Ansicht zu ziehen und der Job ist erledigt (es erinnert mich an meine ersten VB6-Entwicklungen).
Ich habe versucht, MVVM mit WCF RIA zu implementieren und es ist überhaupt nicht strightforward. Wenn ich das verstehe, sollte die MVVM die gesamte Logik enthalten, um sie isoliert testen zu können, aber wenn es darum geht, sie mit WCF RIA zu kombinieren, ist das eine andere Geschichte. Ich habe folgende Fragen.
Kann ich generierte Metadaten als Modell verwenden? Es wäre einfacher, es zu benutzen, wenn ich alles von Grund auf schreibe.
Wie ich den einzigen Weg sah, konnte ich Daten durch DomainContext erhalten oder durch direkte Bindung in der Ansicht (lokale Ressource). Ich will nicht die direkte Bindung in der Ansicht, überhaupt nicht überprüfbar. Auf der anderen Seite kann ich DomainContext nicht verwenden, es stellt keine einzige Entität dar !!! Alles, was ich habe, ist das EntitySet, das ich an Datagrid binden kann. Wie binde ich eine einzelne Entität vom ViewModel an das DataForm?
Wie uppte ich das Modell an die Datenbank?
Wie navigiere ich von einer Entität zu einer Sammlung ihrer Elemente. Zum Beispiel, wenn ich eine Firmen-Entität habe, möchte ich ein DataForm anzeigen, um eine Entitätsinformation zu aktualisieren, und ein Datagrid, um Firmenadressen anzuzeigen. Beim Speichern eines Formulars möchte ich eine Information an das Unternehmen und eine Information an die Adresse speichern, welche Adresse als aktiv ausgewählt wurde.
Bitte helfen Sie mir zu verstehen, wie es gut geht. Oder vielleicht sollte ich die WCF RIA fallen lassen und es mit WCF von Grund auf neu machen?
Was denkst du?
würde auf jeden Fall empfehlen, den Beispielcode 'BookClub' aus diesem Artikel zu betrachten. viel davon gelernt –