0

VS 2008 には、1 つの Web プロジェクトと 3 つのクラス ライブラリを 3 つの異なるプロジェクトとして持つソリューションがあります。1 つのプロジェクトは DataAccess 用で、もう 1 つは BusinessLogic 用です。

DataAccessLayer にクラスがあります。そこから BusinessLogic クラス ライブラリ (プロジェクト) のクラスにアクセスしようとすると、入力しても IntelliSense に入力されません。両方のプロジェクトで同じ名前空間を使用しました。それでも同じ結果。

最初のプロジェクト用に DLL を作成し、2 番目のプロジェクトへの参照として追加する必要がありますか?

4

4 に答える 4

6

あなたの魂の別のプロジェクトでこのプロジェクトへの参照を追加する必要があります。Visual Studio にはプロジェクトを参照として追加するオプションがあるため、アセンブリ ファイルを直接追加する必要はありません。

于 2009-07-22T18:18:19.180 に答える
5

他のプロジェクトでライブラリを参照する必要があります。

これを行うには、ソリューション エクスプローラーで参照フォルダーを右クリックし、[参照の追加] をクリックして、[プロジェクト] タブに移動し、参照するライブラリを選択します。

EDIT:また、使用しようとしているクラスがpublic(例えばpublic class MyClass)として宣言されていることを確認してください。

修飾子 (デフォルト) を省略した場合public、クラスはそのプロジェクトでのみ使用できます。クラスとメンバーを他のプロジェクトに公開するpublicには、宣言に修飾子を追加します

于 2009-07-22T18:19:06.980 に答える
2

BusinessLogicプロジェクト内のクラスを含むプロジェクトへの参照を追加する必要がありますDataAccessBusinessLogicそうしないと、同じ名前空間を使用していても、コンパイラはクラスの実装を見つけることができません。

于 2009-07-22T18:17:39.633 に答える
1

ばかげているように聞こえるかもしれませんが、問題のクラスを Public または Friend として指定しましたか? プロジェクト参照が指定されている場合でも、他のアプリケーション内で適切に取得して使用するには、その意味で「共有」する必要があります。

于 2009-07-22T18:18:34.220 に答える