2015-09-14 98 views
0

我有一個使用帳戶控制器來管理用戶和資源的MVC 5 WebApi項目。它工作正常。
現在我需要添加相同的客戶端功能,即與外部應用程序(iOS,Android,Windows Phone)。對於這個漏洞,我想使用WebApi。將WebApi添加到我的項目中的最佳做法是什麼?我需要使用AccountUser授權,創建和登錄新用戶。我:Web Api集成

  1. 整合的WebAPI到現有項目
  2. 創建一個新的WebAPI項目和管理相同的分貝

什麼是最好的做法?

感謝

+0

在這種情況下沒有真正的最佳做法。只要你有一個兩個項目正在使用的服務層,你就可以做到這一點。 – Luke

回答

0

我會建議將您的共享代碼(entites的,命令和查詢等),以不同的類庫和的WebAPI獨立的MVC。這兩個項目都可以使用共享代碼。

原因是MVC層可能會以包含HTML,CSS和JavaScript的視圖進行響應,而(Web)API層可能只返回JSON或XML。我總是想到問題的分離。

0

沒有銀子彈;你可以做到這一點。您需要自行決定哪種方法可行,通過比較差異並選擇最適合您要求的方案。

有一點需要記住的是,兩個項目意味着兩個應用程序在IIS中,一個是因爲你有兩個Global.asax初始化各自的應用程序。這可能會或可能不會帶來好處。

+0

不完全正確,因爲WebAPI是自主宿主 – Luke

+0

是的,在這種情況下,一個應用程序在IIS中,另一個在您自己的託管過程中......除非您無法將WebAPI託管爲MVC站點的子站點(它們不能共享相同的基地址)。 – CodeCaster

+0

但是,如果只使用一個項目(webapi + mvc)我需要爲認證/註冊用戶創建分離的類? –