0

我有數據庫有5個視圖(SQL Server 2008),客戶端需要一個前端Web(MVC4)來查看帶有過濾器的數據。我正在使用實體框架4映射到數據庫...不知道如何調整通常強制執行CRUD的Repository模式的實現。該應用程序是隻讀的,不刪除,添加或更新。只是獲得和過濾能力?如何處理僅顯示EF4 plus Repository Pattern的視圖的應用程序?

+0

也許您應該首先問問題,您如何以最簡單的方式提供只讀數據。爲什麼你需要一個倉庫?而且,當您可以按原樣顯示視圖數據時,您甚至不需要視圖模型。所以也許過濾一個DbSet就剩下了。 – 2014-12-02 20:31:59

+0

Good Point Gert,我有時會被困在以下約定和模式中。 – Chaka 2014-12-02 21:50:11

回答

0

通常情況下,在實施資源庫模式,你會做這樣的事情:

public class ReadOnlyRepository<TEntity> : IReadOnlyRepository 
    where TEntity : class 
{ 
    // Read-only methods here 
} 

public class Repository<TEntity> : ReadOnlyRepository<TEntity>, IRepository 
    where TEntity : class 
{ 
    // Write methods here 
} 

你可以再注入要將只讀訪問ReadOnlyRepository<SomeReadOnlyEntity>

就實體框架而言,它可以與視圖無縫協作。您只需指定您的實體應該附加的視圖作爲表名稱:

[Table("SomeView")] 
public class SomeEntityFromView 
{ 
    ... 
} 
相關問題