2012-04-15 12 views
2

Ich bin verwirrt.Bitte führen Sie mich jemand.MVVM und ORM-Tools

Ist es erforderlich, ORM-Tools (EF oder Linq2SQL) beim Erstellen einer Anwendung im MVVM-Muster zu verwenden?

Gerade jetzt meine Anwendung kehrt Dataset gerade Abfragen mit „select * from table“

Kann ich Dataset/Datatable zur Liste und dann beobachtbar Sammlung mögen? Oder wir brauchen EF oder L2S haben.

Ich bin verwirrt in MVVM

+1

Nein, es ist nicht zwingend erforderlich, ein ORM zu verwenden. Nicht annähernd. –

+0

Danke Mike. – Dotnet

Antwort

3

Es beginnen zu Kick gibt keinen Grund, warum Sie nicht Ihre eigene Modell Schicht aufbauen kann, wenn es das ist, was Sie tun wollen. Das Schöne an modernen Entwurfsmustern ist, dass sie im Allgemeinen agnostisch sind, was Sie zum Füllen jedes Teils verwenden.

Ich würde spezifische, getrennte Klassen für alle Ihre Datenzugriffscode erstellen, um diese zuerst M getrennt zu halten.

Ein übergeordnetes Prinzip von Mustern wie MVVM und MVC sind Ihre verschiedenen Bedenken zu trennen. Dies hilft in vielerlei Hinsicht - einschließlich insbesondere, um Ihre Fähigkeit zu unterstützen, Ihren eigenen Datenzugriff (Modell) zu verwenden, während Sie das allgemeine Muster verwenden.

Idealerweise würden Sie Ihren Code so schreiben, dass Sie, wenn Sie in Zukunft zu Entity Framework wechseln möchten, dies ohne große Änderungen im restlichen Code tun könnten. Eher - ohne beliebig Änderung im Rest des Codes.

Sie können Ihren Datenzugriff mit dem Muster Repository schreiben, indem Sie Ihre benutzerdefinierten Klassen verwenden, die Ihre handgeschriebene SQL ausführen und Klassen erstellen, mit denen View und ViewModel umgehen können. Da das Repository der Hauptort ist, an dem Ihr anderer Code interagiert, müssen Sie, wenn Sie in Zukunft zu EF oder anderem wechseln, Ihren View- oder ViewModel-Code nicht ändern.