3

App_Code フォルダーにロジックが含まれていた ASP.NET Web サイト プロジェクトがあります。コードの一部をクラス ライブラリ プロジェクトに取り込み (単体テストを可能にするため)、プロジェクト リファレンスを追加しました。コンパイルして正常に実行されます。

問題は、(私の知る限り) Web サイト プロジェクトがプロジェクト参照を表す唯一の方法は、コンパイル済みの dll が /bin ディレクトリに存在することです。これらの生成されたファイルをバージョン管理 (Subversion) に含めたくありません。ファイルを SVN 無視リストに追加する (通常は /bin dll で行うように) ことはできません。プロジェクトの参照が失われるからです。

では、質問: dll を /bin ディレクトリに置く以外に、Web サイト プロジェクトでプロジェクト参照を維持する方法はありますか?

そうでない場合は、クラス ライブラリを独自のソリューションに移動し、.refresh ファイルを使用する予定です。プロジェクトは常に一緒に進行するので、これは私の好みではありません。

4

2 に答える 2

0

参照はソリューション ファイルに保持されていると思います。

Web サイトの場合、ソリューション ファイルには次のセクションがあります。

Project("{GUID}") = "WebsiteName", "WebsiteName", "GUID"
    ProjectSection(WebsiteProperties) = preProject
        .... removed for brevity ...
        ProjectReferences = "{GUID OF REFERENCED PROJECTS}|ProjectName.dll"
        .... removed for brevity ...
    EndProjectSection
EndProject

お役に立てれば

于 2013-02-28T16:29:36.973 に答える
0

空の Visual Studio ソリューションを作成してから、Web サイト プロジェクトと、作成したクラス ライブラリの新しいプロジェクトを追加してみてください。ソリューションをコンパイルしてすべてが正常であることを確認できますが、実際にはその必要はありません。つまり、Web サイトのリラックスしたスタイルを保ちながら、プロジェクトを関連付けることができます。

次に、クラス ライブラリ プロジェクトを同じリポジトリに保持し、コンパイル済みの dll を Web サイトのビンから除外し続けることができます。クラス ライブラリで dll のコピーをレポのルートにある「libs」フォルダに置くと、そこから Web サイトで参照できます。

あなたのフォルダ構造は次のようになります - あなたのプロジェクト - ウェブサイト - あなたのクラスライブラリ - ライブラリ(あなたのクラスライブラリを含むサードパーティのライブラリ) - テスト - その他

于 2012-05-19T18:02:48.517 に答える