2017-12-07 6 views
0

Webプロジェクトの1つをASP.NET Core 2.0にアップグレードしました。アセンブリバージョンの不一致により、他のプロジェクトでエラーが発生しています。競合するすべてのアセンブリを最高のバージョンにアップグレードしようとしています。.net標準のない新しいSystem。*アセンブリを使用できますか?

たとえば、以前のバージョンSystem.Collections.Immutableのnugetパッケージは1.3.1でしたが、ASP.NET Core 2プロジェクトが参照するものはバージョン1.4.0です。

<ItemGroup> 
    <PackageReference Include="System.Collections.Immutable" Version="1.4.0" /> 
</ItemGroup> 

はしかし、これはコンパイルエラーが発生します:すべての

The version of Microsoft.NET.Sdk used by this project is insufficient to support references to libraries targeting .NET Standard 1.5 or higher. Please install version 2.0 or higher of the .NET Core SDK.

まず、私はだから私はSystem.Collections.Immutableが参照されている.csprojファイルでこれを変更しようとします.NET Core 2.0 SDKがインストールされていること。私は< DependsOnNETStandard>プロパティをcsprojファイルに追加し、NETStandard.Libraryを参照することを提案しました。しかし、私たちのコードは、netstandardにないものを含め、.NET Frameworkをフルに活用しているため、これを行うことはできません。

これを動作させるにはどうすればよいですか?

参考までに、Visual Studio 15.3.3および.NET 4.6.2を使用しています。

+0

共有ライブラリで 'netstandard2.0'を対象にする必要があります。これはまだ混乱しています。 –

+0

ライブラリで.NET Framework専用コードを使用しています。私はそれを働かせようとしましたが、私はできませんでした。 – afeygin

+2

Aluan、Visual Studioバージョン15.3.3はVisual Studio 2017です。私はnetcoreapp2.0を対象としていません。私は.NETフレームワーク4.6.2を対象としています。 ASP.NET Core 2.0プロジェクトでアプリケーションのDLLを参照するだけで、現在はSystem.Collections.Immutable、System.Diagnostics.Diagnosticsource、およびSystem.Numerics.Vectorsの異なるバージョンを参照しています。 – afeygin

答えて

0

csprojファイルにDependsOnNETStandardを追加しても、NETStandard.Libraryへの参照でフルフレームワークとの互換性が失われることはありません。 .NET Framework 4.6.1を対象とした.NET Core 2.0 Webアプリケーションで、.NET Standardと.NET Frameworkクラスライブラリと数十のOOB .NET Standardパッケージを参照しているプロジェクトに取り組んでいます。

関連する問題