2017-02-28 15 views
0

私はAsp.Net WebApiプロジェクトを持っています。私はクラスライブラリを作成し、コントローラとモデルを追加しました。Web Apiクラスライブラリをデバッグする方法

プロジェクトの構造は、別のStackOverflow questionで説明されています。

QUESTION:

は今、私はクラスライブラリでコントローラをデバッグする必要があります。 これを行う最も簡単な方法は何ですか?

UPDATE 私の質問は、Visual Studio、それはWabApiプロジェクトを実行するプロセスに添付する必要があるクラスライブラリだとして2015年 でクラスライブラリをデバッグについてです。

VSでデバッグボタンをクリックすると、WEBAPIプロセスを起動し、クラスライブラリのデバッグセッションに自動的に接続する必要があります。

ビジュアルスタジオプロジェクトのプロパティには、「外部プログラムの開始」を設定するデバッグオプションがあります。ここでWebApiプロジェクトをどのように関連付けることができますか? または代替手段はありますか?

+0

郵便配達員(Chrome)やレストクライアント(FireFox)などの残りのクライアントを使用すると、市場で入手できます。または、理想的には、テストを書きます! –

+0

ユニットテストプロジェクトを実施していますか?簡単な方法です –

+0

[1つのソリューションでwebAPiをデバッグ/ユニットテストする方法](http://stackoverflow.com/questions/33286260/how-to-debug-unit-test-webapi-in-one)の可能な複製-solution) – alltej

答えて

0

私はあなたのWeb APIをホストするコンソールアプリケーションを作成するのが最も簡単な方法だと思うし、あなたはapiにリクエストを送るためにfiddler/postmanのようなツールを使うことができます。すべての

https://docs.microsoft.com/en-us/aspnet/web-api/overview/older-versions/self-host-a-web-api

+0

私の質問は、プロセスを実行してデバッグを自動化することです。 VS2015。私は今質問を更新しました。混乱させて申し訳ありません。 – Rahul

+0

申し訳ありませんが、私は混乱しました。私はこの回答を除外します –

0

まず、あなたのWEB APIプロジェクトは、あなたのコントローラーではなく、自分のクラスライブラリが含まれている必要があります。

表示されたスタックオーバーフローは、アプリケーションのエントリポイント(プレゼンテーションレイヤー)としてWEB APIが機能するため、実際には悪いことです。

実際にドメインモデル用のライブラリ「モデル」を作成できますが、データアクセスレイヤー(DAL)と呼ばれるデータベースにアクセスするためのライブラリも作成する必要があります。

ビジネスロジックを追加する場合は、ビジネスレイヤー(BL)という4番目のライブラリが必要です。

ので、流れは次のようにする必要があります:

クライアント< - >プレゼンテーションレイヤー< - >ビジネスレイヤ< - >データアクセス層< - >データベース。

PL、BLおよびDALは、モデルライブラリへの参照を持つことができます。この層全体をN層アーキテクチャと呼びます。

プレゼンテーションレイヤのMVCパターンも見てください。

これでアーキテクチャが完成しましたので、実際にコントローラをデバッグ/テストするのは非常に簡単です。

最初のオプションは、コントローラのエンドポイントにデータを送信するためにPOSTMANを使用し、コントローラにブレークポイントを追加して段階的にデバッグすることです。

2つ目のオプションは、コントローラのエンドポイントのユーザーフレンドリーなインターフェイスと、実際に物を送る機能を提供するSwaggerを使用することです。また、メッセージをどのように構造化する必要があるかについてのJSONテンプレートを提供します。 https://en.wikipedia.org/wiki/Multitier_architecture

MVC:https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

闊歩チュートリアル:https://docs.microsoft.com/en-us/aspnet/core/tutorials/web-api-help-pages-using-swagger

よろしくNティアとMVC

N層での

詳細情報!

+0

私が知る限り、クラスライブラリのコントローラを追加することはエンタープライズレベルの大規模アプリケーションでは非常に一般的です。オンラインで入手できる記事はたくさんあります。私の質問は、実行中のプロセスでデバッグを自動化することです。 VS2015。私は今質問を更新しました。 – Rahul

+0

私は、申し訳ありませんが、質問を誤解しました。 – TanguyB

関連する問題