2017-08-29 4 views
0

.Net 4.6プロジェクトを参照するnetstandard20プロジェクトがあります。すべてのコンパイルと実行は.Net 4.6プロジェクトの任意の機能を呼び出す場所を除き、次のエラーが発生します。System.Data.Linq in netstandard20

にFileNotFoundException:ファイルまたはアセンブリ 'System.Data.Linq、バージョン= 4.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089' をロードできませんでした。システムは、指定されたファイルを見つけることができません。

VS 2017で

Dependancies/SDK/Microsoft.NETCore.App下のプロジェクトエクスプローラで私がSystem.Data.dllSystem.Data.Common.dllを見ることができますが、System.Data.Linq.dllへの参照、私はこれは私の問題であり、それはに引っ張られていないと仮定しています。

私はどうすればよいです私のプロジェクトにSystem.Data.Linq.dllを含める?私はC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6\System.Data.Linq.dllが含まれている場合

私は次のようなエラーに

BadImageFormatExceptionを取得:ファイルまたはアセンブリ 'System.Data.Linq、バージョン= 4.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089' をロードできませんでした。参照アセンブリは、実行のために読み込まれるべきではありません。それらは、Reflection-onlyローダーコンテキストでのみロードできます。 (HRESULTからの例外:0x80131058)

答えて

1

System.Data.Linqは.NET Standard 2.0および.NET Core 2.0の一部ではないため、そのプラットフォームでは使用できません。

互換性shimを使用して.NET 4.6プロジェクトへの参照を追加することは困難でしたが、ターゲットランタイムで利用できない機能のため実行時に失敗します