簡體   English   中英

ASP.Net MVC 2-與存儲庫的模型耦合

[英]ASP.Net MVC 2 - Model Coupling with Repository

提到這個問題,假設我們有以下情形-

實現IUser模型類User

[MetadataType(typeof(IUser))]
public class User : IUser

還有一個存儲庫,用於處理我們要使用的任何數據存儲的保存,檢索等

public class UserRepository : IRepository<User>
IQueryable<User> GetAUserBySomeCriteriaOrOther(int aParam, string anotherParam);

進一步,我們將有一個控制器,也許還有一個頂部視圖,每個控制器都希望有一個IQueryable<User>實例。

因此,我的問題是:與IQueryable<IUser>相比,將結果作為IQueryable<User>從存儲庫傳回的優缺點是什么?

我問的原因是,我看到的大多數示例/演示都將使用IQueryable<User> ,但是在我看來,這似乎是在高層之間引入耦合以及用於生成User類的任何方法。 假設我想從Linq-to-Sql更改為Entity Framework-那不是那么大的麻煩嗎?

EntityFramework不支持通過接口查詢。 Linq2Sql可以解決這個問題。

通常,您的User類在所有.NET ORM之間看起來都是相同的。 當您切換ORMS時,您的linq和模型類可能不會更改。

暫無
暫無

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

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