2009-04-29 8 views

答えて

0

これはわかりました。 ASP.NET MVCアプリケーションがWebサイトではなくWebアプリケーションである唯一の理由は、単体テストと関係があります。 ASP.NET MVCアプリケーションを少しでも変更してWebサイトに「変換」することはできますが、単体テストはWebサイトへの参照がないため動作しません。しかし、私はあなたがアプリケーション・ロジック(コントローラなど)を別のクラス・ライブラリに引っ張ってから、そのクラス・ライブラリをWebサイトとユニット・テストで参照すると、ユニット・テストが機能するようになると確信しています。

1

Webアプリケーションには、Webサイトプロジェクトと比較した場合のビルドプロセスをよりよく制御できる.csprojファイルがあります。これはVS IDEによって完全に管理されたビルドのファイルとフォルダのセットです私は気付いています。

あなたは正しいかもしれませんが、プロジェクト構造とMVCアプリケーションプロジェクトとテストプロジェクトとの関係に関連する別の原因が考えられます。

WebアプリケーションとWebサイトの主な違いの1つは、Webサイトがスタンドアロンエンティティであり、テストプロジェクトとアプリケーションプロジェクトとの関係を表現することが困難なソリューション内に存在しないことです一方、Webアプリケーションが使用されている場合、Webサイトとそのテストは共通の解決策の中で2つのプロジェクトとして扱うことができ、MSBuildを使用することのメリットも得られます。

+0

Webアプリケーションは、参照しやすいクラスライブラリアセンブリを作成するだけですが、Webプロジェクトでは、ASP.NETが動的に作成するアセンブリ(各リロードで名前が変更されるため、扱いにくい)しかありません。 – Richard

関連する問題