2013-03-17 38 views
5

Ứng dụng mvc 4 của tôi hiển thị một lớp API cho 3 ứng dụng con khác nhau. Tôi đang sử dụng một bộ điều khiển api duy nhất cho tất cả ba ứng dụng con. Tất cả ba ứng dụng này đều sử dụng DB ứng dụng mẹ.mvc 4 api web cho nhiều ứng dụng

Tôi muốn biết nếu tôi đang làm bất cứ điều gì sai trái với điều này. Ngoài ra, khi ứng dụng phát triển, bộ điều khiển api đang trở nên nặng nề. Có cách nào tốt để tôi có thể quản lý ứng dụng con trong dự án ứng dụng mẹ không ?.

+0

Bạn có thể cung cấp thêm ngữ cảnh về câu hỏi của mình không? It's ok để có một điểm vào duy nhất cho API của bạn, nhưng tôi sẽ chia các phương pháp trên các bộ điều khiển khác nhau – amhed

Trả lời

5

Bạn có thể sử dụng Khu vực để quản lý các ứng dụng con của bạn trong phụ huynh. Hãy làm theo các bước đã trả lời trong câu hỏi dưới đây để tạo ra khu vực trong dự án của bạn

How to Configure Areas in ASP.NET MVC3

Đối xử lý yêu cầu Api cho các khu vực, bạn cần phải có hai tuyến đường trong việc đăng ký khu vực.

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 } 
     ); 
    } 

Tuyến đường đầu tiên là để tiếp cận bộ điều khiển api trong khu vực và tuyến thứ hai cho bộ điều khiển api thông thường.

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

Liên kết trên giải thích thêm về điều này.

Bằng cách này, bạn có thể tách các ứng dụng con của mình và tổ chức các chức năng, dạng xem mô hình (nếu có) trong dự án mẹ.

+0

Thanks..Areas là hữu ích –

4

Bạn có thể xử lý các ứng dụng con dưới các bộ điều khiển api web khác nhau.

Các vấn đề liên quan