2012-03-20 15 views
38

私は多くのプロジェクトを含むソリューションを持っていますが、そのうちの1つを除くすべてが動作しています。動作していないものはConsoleApplicationであり、C#クラスライブラリプロジェクトに依存しています。私はライブラリプロジェクトへの参照を追加し、名前空間を追加しましたが、これは正しいですが、私のライブラリ内のクラスを参照する場所はどこにでもあります:VisualStudio2010でプロジェクト参照が機能しない

タイプまたは名前空間 'MyClass'使用していないディレクティブやアセンブリ参照がありませんか?

ライブラリプロジェクトが正常にビルドされています(DLLがbinフォルダに表示されているのがわかります)。プロジェクト参照とDLL自体の参照も試行しました。どちらも動作しません。

また、すべてのプロジェクトはプラットフォームターゲット 'すべてのCPU'でビルドされています。

私はフォーラムで何も成功していないと私はほとんどすべての提案を試してみました。誰かが何がうまくいかないのかについて何か光を当てることができますか?これは、問題を解決し

おかげ

は:

ライブラリはちょうど.NET Framework 4を持っていたのに対し、コンソールアプリケーションは、.NET Framework 4 Client Profileのターゲットフレームワークを持っていました。私は.NET Framework 4にコンソールアプリケーションを設定し、それはすべて完全に構築されます。

+1

ちょうど私の2セントです。 C#は大文字と小文字を区別しますあなたの名前空間のケースをチェックしましたか? – Steve

+0

クラスにはpublicコンストラクタがありますか? –

+0

以下のantaoの答えを見てください - 私たちは定期的にgitがプロジェクトファイルを混乱させることを見ています。 – increddibelly

答えて

83

私の賭けは、ライブラリとアプリあなたがたとの間のフレームワークの不一致にある...あなたのライブラリがアプリあなたよりも優れたバージョンでビルドされていないか、またはアプリケーションがクライアントプロファイルの風味を構築している場合場合 チェック

+0

うん、あなたはスポットだった、ヒントのおかげでセドリック – Richard

+7

おかげで皆、それは速かった! :) はい、コンソールアプリケーションには.NET Framework 4 Client Profileのターゲットフレームワークがありましたが、ライブラリには.NET Framework 4しかありませんでした。コンソールアプリケーションを「.NET Framework 4」に設定しています。 私はエラーの言い回しを見てそこに見えるとは思わなかったので、チップのおかげで。私はそれはあなたが一度だけして、次回(...?)のためにそれを覚えている間違いの1つだと思います。 ありがとう! – Richard

+0

ああ、私はこれを解決しようと一日を過ごすだろうが、あなたがいる:D –

3

あなたのDLLの1つが、コンソールアプリケーションで参照されていない.netフレームワークの一部を参照している可能性があります。たとえば、クラスライブラリプロジェクトの1つにasp.netサーバーコントロールがあり、System.Webを参照していて、コンソールアプリケーションがSystem.Webを参照していない場合、ビルドされず、そのエラーが発生します。しかし、参照されているDLLはGACに格納されているため、binフォルダには表示されないため、明らかではありません。

+0

私はあなたが正しいと思うベン、私は以下の完全な答えを追加しました - 助けをありがとう – Richard

+0

私はなぜあなたはより多くのupvotesを持っていないのだろうか –

1

奇妙な音、

プロジェクトの参照を削除してもう一度追加しようとしましたか?あなたのコンソールアプリケーションがすべての正しい参照を持っているかどうかを確認してください。

.csprojファイルを調べて、すべてが正しいかどうかを確認することもできます。

0

「クラスライブラリ」プロジェクトにクラスが含まれているか、.edmxモデルのみを含むデータアクセスレイヤープロジェクトの場合は、モデルデザイナーが見つかって問題なく生成されます。

グッドラック

関連する問題