2013-03-17 64 views
5

我的mvc 4應用程序爲3個不同的子應用程序公開了一個API層。我爲所有三個子應用程序使用單個API控制器。所有這三個應用程序使用父應用程序數據庫。mvc 4多個應用程序的web api

我想知道我是否在做這個問題。此外,隨着應用程序的發展,api控制器正在變得沉重。有沒有什麼好辦法可以管理父應用程序項目中的子應用程序?

+0

你能提供更多關於你的問題的背景嗎?可以爲您的API提供一個入口點,但我會在不同的控制器上劃分方法 – amhed 2013-03-18 00:46:29

回答

5

您可以利用區域來管理您的子應用程序在父級應用程序中。請按照您的項目

How to Configure Areas in ASP.NET MVC3

對於處理API請求區在下面回答過的問題,以創建區域的步驟,你需要有在該地區註冊兩條路線。

public override void RegisterArea(AreaRegistrationContext context) 
    { 
     context.Routes.MapHttpRoute(
      name: "Area_Name_Api", 
      routeTemplate: "Area_Name/api/{controller}/{action}/{id}", 
      defaults: new { id = RouteParameter.Optional } 
     ); 
     context.MapRoute(
      "Area_Name_default", 
      "Area_Name/{controller}/{action}/{id}", 
      new { action = "Index", id = UrlParameter.Optional } 
     ); 
    } 

第一條路線是在該地區和第二個用於常規那些達到API控制器。

http://blogs.infosupport.com/asp-net-mvc-4-rc-getting-webapi-and-areas-to-play-nicely/

上面的鏈接詳細解釋了這一點。

通過這種方式,您可以分離您的子應用程序並組織您的功能,模型視圖(如果有的話)在父項目中。

+0

Thanks..Areas有幫助 – 2013-03-21 18:02:30

4

您可以在不同的web api控制器下處理子應用程序。

相關問題