2012-04-15 26 views
2

我很困惑。請引導任何人。MVVM和ORM工具

在MVVM模式下構建應用程序時,是否強制使用任何ORM工具(EF或Linq2SQL)?

現在我的應用程序返回的數據集採用了直板查詢像「SELECT * FROM表」

我可以使用的數據集/數據表中列出,然後觀察的集合?或者我們需要有EF或L2S。

我感到困惑的MVVM

來啓動
+1

不,不一定要使用ORM。差遠了。 – 2012-04-15 11:24:47

+0

謝謝Mike。 – Dotnet 2012-04-15 22:32:48

回答

3

沒有理由你不能建立自己的型號層,如果這是你想要做什麼。現代設計模式的好處在於,他們通常不知道你用什麼來填充每個部分。

我會爲您的所有數據訪問代碼構建特定的分隔類,以保持第一個分開的第一個分隔類。

MVVM和MVC等模式的總體原則是分開您的各種問題。這有助於多種方式 - 特別是支持您在使用一般模式時使用自己的數據訪問(模型)的能力。

理想情況下,您可以編寫代碼,以便將來如果決定轉移到實體框架,則可以在代碼其餘部分沒有太多變化的情況下這樣做。相反 - 沒有任何在代碼的其餘部分的變化。

您可以使用存儲庫模式編寫數據訪問,使用您的自定義類來執行您的手寫SQL並生成View和ViewModel可以處理的類。由於Repository是其他代碼交互的主要位置,因此如果將來切換到EF或其他任何其他代碼,則知道不必更改View或ViewModel的任何代碼。