2017-11-14 9 views
0

私はUnityを使用して注入したサービスレイヤを持つ.NET MVCアプリケーションを使用して、ビューロジックをビジネスロジックから分離します。モノリシックアプリケーションでサービスレイヤーを使用しながら、他のアプリケーションがREST APIとしてサービスレイヤーを使用できるように、RESTエンドポイントと同じサービスレイヤーメソッドを公開する方法はありますか?.NET MVCサービスレイヤをRESTエンドポイントとして公開

これを行う人の例はありますか?

+6

[ASP.NET Web API](https://docs.microsoft.com/en-us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/)の使用をお勧めします。 tutorial-your-first-web-api)を使用してREST APIを作成します。 .NET MVCアプリケーションと同じサービスレイヤーを使用できます。 – burnttoast11

答えて

1

この場合、ASP.Net Web APIを使用して区切られたプロジェクトを作成することができます。

Web Apiを使用すると、あなたのサービスをあなたのコントローラーに注入して、MVCアプリケーションから他のアプリケーション(モバイルなど)からRest Servicesを呼び出すことができるはずです。

また、EFを使用している場合は、リポジトリに別のプロジェクト(レイヤー)を作成し、EF Contextをリポジトリに挿入すると、サービスレイヤーのレポジトリとサービスがコントローラに格納されます。

私の個人的なプロジェクトでは、WEB APIプロジェクトからのみサービスレイヤを呼び出し、MVCアプリケーションからは決して呼び出しません。 MVCはRESTサービスを通じてのみサービスレイヤーを使用します。

+0

これは本当に私が向かっていくアーキテクチャですが、人々がMVCをそのように実装した例は見つけられません。あなたは最初にそのタイプの実装を見たリファレンスを持っていますか?私は指をはずしていますが、.NETで同じ問題に近づく方法はたくさんあります。 –

+0

複数の例では、多くの例が見つかります: https://app.pluralsight.com/library/ There's多くのコース。著者のGitHubリポジトリを見てみましょう。そのほとんどはGitHubのサンプルコードです。 –

関連する問題