28

アプリケーション インサイトとエンティティ フレームワークを使用して Web ジョブ プロジェクトを実行しようとすると、常にこのエラーが発生します。

System.IO.FileLoadException: 'ファイルまたはアセンブリ 'System.Runtime.InteropServices.RuntimeInformation、Version=0.0.0.0、Culture=neutral、PublicKeyToken=b03f5f7f11d50a3a' またはその依存関係の 1 つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULT からの例外: 0x80131040)」

次のnugetパッケージをインストールしました

Microsoft.Azure.WebJobs.Logging.ApplicationInsights バージョン 2.1.0-beta4

Microsoft.Extensions.Logging バージョン 2.0.0

Microsoft.Extensions.Logging.Console バージョン 2.0.0。

これはすべて、新しい Visual Studio 2017 webjob プロジェクトで機能します。主にエンティティ フレームワークを使用して既存のコード ベースを含めようとすると、このエラーが発生します。動作するリファレンスを見ると、System.Runtime.InteropServices.RuntimeInformation がありませんが、エンティティ フレームワークを使用してプロジェクトに追加されています。.net 標準の一部のようですが、新しいコンソール アプリに .net 標準が必要ないのはなぜですか?

ここに画像の説明を入力

私が持っているものは4.0.2.0であるため、バージョン0.0.0.0を探している理由がわかりません

これをプロジェクトファイルに追加しようとしましたが、うまくいきませんでした。

<PropertyGroup>
    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
   <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
</PropertyGroup>

どんな助けでも大歓迎です

どうもありがとう

4

4 に答える 4

3

プロジェクトの .NET ランタイム バージョンを 4.7.1 より前のバージョンから 4.7.1 以降に更新した場合は、Nuget パッケージをアンインストールし、App.config 部分が残っている場合は削除またはコメント アウトし、フレームワーク。これは 4.7.1 以降のフレームワークに含まれており、それ以前は Nuget パッケージを追加する必要がありました。

[編集] ...上記のマイケルのコメントによると、私は生きている記憶の前に賛成しました。

于 2020-06-30T04:46:57.023 に答える
0

このタイプのエラーは、別のプラットフォームからプロジェクト参照を追加してビルドしようとしたときにも発生することがあります。参照を削除すると、うまくいくはずです。

于 2021-10-03T10:18:09.843 に答える