2

ソリューションをビルドするたびに、次の警告が表示されます。

警告 この参照を解決できませんでした。アセンブリ "WordAPI" が見つかりませんでした。アセンブリがディスク上に存在することを確認してください。コードでこの参照が必要な場合、コンパイル エラーが発生する可能性があります。オファーホスト

ただし、すべて正常に動作しているように見えます。これは単なる警告ですが、私を悩ませています。

それはどのように始まりましたか?

ソリューションのプロジェクトの 1 つの名前を変更しました。右クリック -> 名前の変更オプションを使用しました。また、検索と置換を使用して、プロジェクト内のすべてのファイルの名前空間の名前を変更しました。AssemblyInfo.cs ファイルを変更しました。アプリケーション タブのプロジェクト プロパティで、 と を変更しましAssembly NameDefault Namespace。問題がある場合は、Costura.Fodyも使用しています。

どのように修正しようとしましたか?

  • HintPath実行中のアセンブリのプロジェクト ファイルを次のように変更しました。

    <HintPath>..\WordAPI\bin\Debug\WordAPI.dll</HintPath>
    
  • 実行中のアセンブリから参照を削除し、再度追加しました。
  • ソリューション全体のデバッグ/リリース フォルダーを削除し、ソリューションを再構築しました

私は本当に解決策を見つけることができません。空の解決策を開始して、そこにあるすべてをコピーするのは魅力的です...


私の参照のプロパティ:

ここに画像の説明を入力

ファイル エクスプローラーでのプロジェクトの場所:

ここに画像の説明を入力

4

3 に答える 3

2

WordAPI が実行可能ファイルと同じソリューションにあると仮定すると、参照では HintPath を使用しないでください。ソリューション -> プロジェクトの選択を使用して参照を削除および追加します。実行可能 csproj の参照は次のようになります。

<ProjectReference Include="..\WordAPI.csproj">
  <Project>{GUID}</Project>
  <Name>WordAPI</Name>
</ProjectReference>

コメントで述べたように、デバッグ ビルド構成とリリース ビルド構成に同じパスが使用されているため、HintPath は Debug ディレクトリを指すべきではありません。これが問題の原因である可能性があります。

プロジェクト、ソリューション、ビルド パス、ビルド構成に関する詳細がなければ、より良い答えを出すことは困難です。

于 2016-01-27T09:22:27.973 に答える
1
  1. /binパスがフォルダーを指していてはなりません。代わりに/packages
  2. Copy Local参照プロパティの ' ' プロパティは ' True' である必要があるため、参照された .dll ファイルは、アプリケーションのデプロイ中に実際にコピーされます。
于 2017-05-31T09:18:14.800 に答える