我有一個使用帳戶控制器來管理用戶和資源的MVC 5 WebApi項目。它工作正常。
現在我需要添加相同的客戶端功能,即與外部應用程序(iOS,Android,Windows Phone)。對於這個漏洞,我想使用WebApi。將WebApi添加到我的項目中的最佳做法是什麼?我需要使用AccountUser授權,創建和登錄新用戶。我:Web Api集成
- 整合的WebAPI到現有項目
- 創建一個新的WebAPI項目和管理相同的分貝
什麼是最好的做法?
感謝
我有一個使用帳戶控制器來管理用戶和資源的MVC 5 WebApi項目。它工作正常。
現在我需要添加相同的客戶端功能,即與外部應用程序(iOS,Android,Windows Phone)。對於這個漏洞,我想使用WebApi。將WebApi添加到我的項目中的最佳做法是什麼?我需要使用AccountUser授權,創建和登錄新用戶。我:Web Api集成
什麼是最好的做法?
感謝
我會建議將您的共享代碼(entites的,命令和查詢等),以不同的類庫和的WebAPI獨立的MVC。這兩個項目都可以使用共享代碼。
原因是MVC層可能會以包含HTML,CSS和JavaScript的視圖進行響應,而(Web)API層可能只返回JSON或XML。我總是想到問題的分離。
沒有銀子彈;你可以做到這一點。您需要自行決定哪種方法可行,通過比較差異並選擇最適合您要求的方案。
有一點需要記住的是,兩個項目意味着兩個應用程序在IIS中,一個是因爲你有兩個Global.asax
初始化各自的應用程序。這可能會或可能不會帶來好處。
不完全正確,因爲WebAPI是自主宿主 – Luke
是的,在這種情況下,一個應用程序在IIS中,另一個在您自己的託管過程中......除非您無法將WebAPI託管爲MVC站點的子站點(它們不能共享相同的基地址)。 – CodeCaster
但是,如果只使用一個項目(webapi + mvc)我需要爲認證/註冊用戶創建分離的類? –
在這種情況下沒有真正的最佳做法。只要你有一個兩個項目正在使用的服務層,你就可以做到這一點。 – Luke