私はC#Windowsサービスを構築しており、プロジェクトに(他の独自のプロジェクトへの)アセンブリ参照をいくつか追加しています。
ビルドすると次のエラーが表示されます。
「エラー25型または名前空間名 'TestClass'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?」
興味深いことに、csprojファイルの参照パスは正しく、その上、参照されたプロジェクトのクラスと名前空間は、Visual Studioによれば欠落しており、Intellisenseおよび "定義に移動"によっても選択されています。機能は正常に動作します。さらに、新しいWindowsサービスとまったく同じフォルダーに他のプロジェクトがあり、アセンブリ参照を問題なく取得しました。すべての参照プロジェクトがソリューションに含まれています。
Visual Studio 2013 Update 3を使用します。詳細を示すコードを実際に表示することはできませんが、スクリーンショットなどを表示する場合はお知らせください。
これまでの試み:
Update参照リストで「見つからない」参照の1つを選択し、プロパティに移動すると、パスが定義されていません。しかし、相対パスは正しいのでcsprojファイルにあります。紛らわしい。
Update 2すべての参照を削除し、プロジェクトをリロードしてから、きれいに修正して修正しました。どうやら、問題はビルドスタックで更新されていないすべてのdllが原因で発生したようです。
私の場合、アセンブリプロジェクトのターゲットフレームワークと、このアセンブリを使用するプロジェクトのターゲットフレームワークは異なります。アセンブリプロジェクトのターゲットフレームワークは4.5で、私のプロジェクトのターゲットフレームワークは4.0でした。
プロジェクトのターゲットフレームワークをアセンブリプロジェクトのターゲットフレームワーク、つまり4.0から4.5に変更すると、正常に機能します。
プロジェクトのターゲットフレームワークを変更するには、
プロジェクトを右クリック->プロパティ->アプリケーション->ターゲットフレームワーク
このターゲットフレームワークはドロップダウンリストです。このリストから必要なフレームワークを選択します。
別の考えられる問題は、。NETの対象バージョンでの不一致アセンブリ間です。私は同じ症状を経験しましたが、同じバージョンのフレームワークを設定することでうまくいきました。
私も同じ問題です。または、少なくとも症状は同じでした。私のソリューションはネットワークドライブにありました。 ソリューションをローカルドライブに移動すると問題が解決しました。
その理由は、Windows 10がネットワークドライブを信頼できる十分な場所として認識していなかったことにあるようです。どうにかして自分のソリューションを破ることができたまで、それはうまくいきました。 Visual Studioには、必要な修正操作を実行するために必要な権限がないようです。
パッケージの再インストールはうまくいきました。
パッケージマネージャーコンソールから、次のコマンドを実行してすべてのパッケージを再インストールします。
update-package -reinstall
以下を使用して単一のパッケージをターゲットにできます。
update-package PACKAGE_NAME -reinstall
[エラー]リストで[ビルドのみ]を選択したことを確認してください。時間の無駄である[IntelliSense]を選択しないでください。