私は3つのプロジェクトでソリューションを持っています:
ビルドしようとすると、警告が表示されます。
タイプ「AVSoft.ParsersBase.IParseRule」への参照は、「c:\ Users\Tim\Dropbox\projects\Image Downloader\ParsersLibrary\bin\Debug\ParsersLibrary.dll」で定義されていると主張していますが、見つかりませんでした
VSがParsersLibrary.dllでAVSoft.ParsersBase.IParseRule
を見つけようとしているのはなぜですか? ParsersLibraryTestにはParsersBaseへの参照がありますが、意味がありません。
それは私のせいで、最初にParsersLibraryプロジェクトを作成してからParsersBaseに名前を変更しましたが、アセンブリ名を変更せずに、ParsersLibraryプロジェクトを再度追加しました。
それで、2つのプロジェクトのアセンブリ名は同じでしたが、あまり良くありませんよね? :)アセンブリは互いに重複しているため、このエラーが発生します。
同様の問題がありました。サイトは、私がbinディレクトリに展開したものではなく、dllのキャッシュバージョンを実行していました。一時的なasp.netフォルダーの内容をクリアして、問題を解決しました。
このエラーはさまざまなシナリオをカバーしているようです。私の場合、Visual Studioを閉じて再度開くことがコツでした。 Visual Studioを再起動した後、期待どおりにプロジェクトをビルドできました。
私は同様の問題を抱えていました: 'Func <>'型への参照は 'mscorlib'で定義されていると主張していますが、見つかりませんでした。問題は次のとおりです。私のソリューションにはTarget Framework = 3.5があり、フレームワーク4.0に対して構築されたMicrosoft.Practices.Prism v 4.0への参照を追加しました。
ターゲットフレームワークを4.0に変更した後、動作しました
今日、この例外を見つけました。私の場合の問題は、私がsome.package v2.1
ホストにインストールされ、some.package v2.3
他のプロジェクトにインストールされています。 Update-Package
ホストプロジェクトのv2.3
問題を修正しました。
ParsersLibraryTestはParsersBaseを参照する必要があります。エラーの2番目の部分は、「アセンブリ 'ParsersBase ...への参照を追加する必要があります」と表示されます。
このエラーを克服できる唯一の方法は、関連するすべてのnugetパッケージを強制的にアンインストールしてから再インストールすることでした。悲しいが本当。
私は同様の問題を抱えていました:タイプ 'Func <>'への参照は 'mscorlib'で定義されていると主張しますが、見つかりませんでした。私は.Net 4のlibを参照しています.Net 3.5プログラム。両方を4.61にアップグレードした後、機能しました。
.Net 3.5ではFunc<T>
が欠落しており、そのサンプルアプリをアップグレードするだけで十分だったようです。
さらなる経験:誰かがFunc<T>
パラメーターを使用するライブラリプロジェクト(.Net 4)に署名を追加しました。しかし、サンプルプログラム(3.5)は既に存在し、これまでのところ正常に実行されました。しかし、再コンパイル時に、依存関係の依存関係が衝突しました。 mscorelib-3.5が既にロードされていたため。すべてはコンパイル時に行われます。
上記の回答をすべて試してみましたが、私の問題は解決しませんでした。
最後に、最新のコード(GIT)をチェックインしてから、リポジトリを別の場所に複製しました。
理想的ではありませんが、少なくとも問題は解決しました。