Web サイト A と Web サイト B の 2 つの Web サイト プロジェクトを含むソリューションがあるとします。Web サイト A の App_Code フォルダー内には、ClassX.cs ファイルで定義されたクラス X があります。Web サイト B も ClassX.cs にアクセスする必要がある場合はどうしますか?
このファイルを App_Code フォルダー間で共有する方法はありますか? ファイルを共通ライブラリーに移動することは問題外であると仮定します。
共有クラスをライブラリ(DLL)にパックし、各サイトから[参照の追加]を右クリックして、作成したライブラリを選択します。
「ファイルを共通ライブラリに移動することは問題外であると仮定します」という制限付き。これを行う唯一の方法は、NTFS ジャンクション ポイントを使用して基本的にシンボリック リンクを作成し、両方のフォルダーに同じ .cs ファイルを含めることです。
ただし、これはひどいオプションです (バージョン管理上の理由から)... 共通ライブラリに移動するのが最善のオプションです。
NTFSジャンクションポイントに関するウィキペディアのエントリは次のとおり ですhttp://en.wikipedia.org/wiki/NTFS_junction_point
そして、ここにそれらを作成するためのツールがあります http://technet.microsoft.com/en-us/sysinternals/bb896768.aspx
これらの不浄なウェブサイト プロジェクトを使用しないでください。代わりに Web アプリケーション プロジェクトを使用し、共有クラスをライブラリ プロジェクトにパックして、すべての Web アプリケーションから参照します。
ClassXを新しいコードライブラリプロジェクトに移動せずに方法があるとは思いません。.NETでは、すべてのアセンブリの依存関係が、アセンブリ自体と同じフォルダーに存在するか、GACに存在して自動的に検出される必要があります。
少しハッキーですが、Reflectionクラスを介してアセンブリを手動でロードしてみることができます。
利用可能な時間とそれを実行する傾向がある場合の最善の解決策は、それをWebアプリケーションプロジェクトに移動するというJRoppertの解決策を採用することです。次に、Web参照(VS内の通常の参照と同じくらいうまく機能します)を使用して、ClassXを参照できます。
HTH