簡體   English   中英

MVC +存儲庫模式 - 仍取決於數據模型?

[英]MVC + Repository Pattern - Still depends on Data Model?

我已經開始了一個學校項目,我正在使用ASP.NET MVC 2 + LINQ2SQL和業務層,所以我的UI不直接與DB交互。 我的問題是:

在我的MVC項目中,當提出視圖和傳遞數據時,我仍然必須包含我的Data項目以訪問我的Linq2Sql項目中的類。 它是否正確?

例:

控制器:

ClassesRepository cr = new ClassesRepository(); // this is from my Business project
Class classToEdit = cr.GetByClassId(id); // "Class" is from my data project

我仍然需要在我的linq2sql數據項目中引用Class類 - 我的UI不應該完全獨立於我的數據層嗎? 或者也許我說這一切都錯了。

我更喜歡讓我的Repository在內部對我自己的類進行映射。 所以我從我的存儲庫返回的不是LinqToSql類,而是我自己的類。 然后,我將返回的類數據映射到每個視圖的模型中。

所以它看起來像:

LinqToSQL類 - > MyClass(此時從Repository輸出) - >(控制器映射到特定視圖的模型)MyModel。

確保始終為每個視圖創建模型。 您可以使用存儲庫返回的內容,但這是一個捷徑,將其映射到自己的視圖模型將在未來獲得回報。

看看MVC Central的高爾夫跟蹤系列,它可以滿足您的需求,也可以解釋Kelsey所描述的內容。

http://www.mvccentral.net

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM