私の mvc 4 アプリケーションは、3 つの異なる子アプリケーションの API レイヤーを公開しています。3 つの子アプリすべてに 1 つの API コントローラーを使用しています。これら 3 つのアプリはすべて、親アプリ DB を使用します。
私はこれに何か問題があるかどうか知りたいです。また、アプリの開発に伴い、API コントローラーが重くなっています。親アプリ プロジェクトで子アプリを管理する良い方法はありますか?
私の mvc 4 アプリケーションは、3 つの異なる子アプリケーションの API レイヤーを公開しています。3 つの子アプリすべてに 1 つの API コントローラーを使用しています。これら 3 つのアプリはすべて、親アプリ DB を使用します。
私はこれに何か問題があるかどうか知りたいです。また、アプリの開発に伴い、API コントローラーが重くなっています。親アプリ プロジェクトで子アプリを管理する良い方法はありますか?
エリアを使用して、親アプリで子アプリを管理できます。以下の質問で回答されている手順に従って、プロジェクトにエリアを作成してください
エリアへの API リクエストを処理するには、エリア登録に 2 つのルートが必要です。
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 コントローラーに到達するためのもので、2 番目のルートは通常の API コントローラーに到達するためのものです。
http://blogs.infosupport.com/asp-net-mvc-4-rc-getting-webapi-and-areas-to-play-nicely/
上記のリンクは、これについて詳しく説明しています。
このようにして、子アプリを分離し、関数、モデル ビュー (存在する場合) を親プロジェクトに整理できます。
異なる Web API コントローラーで子アプリを処理できます。