2014-02-19 26 views
0

我正在設計帶有兩個接口的ASP.NET WEB API服務。第一個界面是隻讀的,第二個是管理界面(與MVC應用程序一起使用),具有全面的CRUD支持。有誰知道我可以從哪裏獲得關於此類設置,任何教程,漫步想法,樣本設計文檔的更多信息?ASP.NET WEB API多接口

它也值得分裂成兩個接口或保持它們相同?但問題是,在只讀中,我爲每個對象公開了2-3個屬性,而對於管理員則有10-15個?

WCF或設計規範的類似設置將做。

回答

0

如果我明白你想要做什麼,我可以建議而不是有一個網址,即\ dataStuff \ dataView拆分到另一個視圖,也許\ dataStuff \編輯\只有管理員有權訪問,可以做到像所以:

[Authorize(Roles = "Administrators")] 
public ActionResult edit() 
{ 
    return View(); 
} 

然後旁邊您的視覺通過使用User.IsInRole

@foreach (var item in Model.dataTable) 
{ 
    @* 
    write a value from the data table here 
    *@ 
    @Html.ActionLink("edit", "edit").If(User.IsInRole("Administrators")) 
    <br/> 
} 

的添加以下僅管理員的很明顯,你不必像這樣顯示數據的每個數據元素,我只是表明你將添加到da的每個元素的末尾如果用戶是管理員,則編輯ActionLink。

這使您的管理員可以像用戶一樣查看數據,並且還具有所需的附加功能。代碼重用優於具有兩種狀態(Admin和非Admin)的單一視圖。

很抱歉,如果這是不是最好的解釋,相當新的MVC

0

好像這個概念有時被稱爲CQRS。 示例:http://martinfowler.com/bliki/CQRS.html

+0

請閱讀[是否只包含其他鏈接的答案真的很好的答案?](http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-elsewhere -really-好答案) –