2017-05-08 9 views
0

私は2つのdotnetコアプロジェクトを持っています。それらの1つはdotnet 1.0Preview 2 build 3131 and 3133)を使用し、他の用途はdotnet 1.1.1です。私が知る限り、project.json & xprojベースのプロジェクトをdotnet 1.1.1で実行することはできません。csprojベースのプロジェクトをdotnet 1.0で実行することもできません。LinuxまたはWindowsでレガシーと現在の両方のバージョンのdotnetコアがサポートされていますか?

レガシーdotnetコアプロジェクトをcsprojに移行することができます。しかし、私は、WindowsまたはLinuxの両方のプロジェクトで作業できるソリューションを探しています。

Visual Studioでプロジェクトをコンパイルするときにドッカーを使用してチェックしましたが、十分なリソースが見つかりませんでした。

ありがとうございました。

+0

私たちは明確です:dotnet 1.1(つまり「現在」)とcprojを両方とも使用するとどうなりますか?これはデフォルトのものでなければならないので、なぜそうすることができないのですか? (もし必要なら1.1.1を使うのはいいと思う) –

+0

.Net Coreのすべてのバージョンは、WindowsとLinuxの両方で動作する。最新のバージョンの.Net Coreをどこからでも使用できない原因は何ですか? – svick

答えて

1

まず、.Net Coreのバージョンと.Net Core SDKのバージョンを混同しているようです。

.Net Core(バージョン1.0.4または1.1.1など)のバージョンは、project.jsonとcsprojの違いに直接関係しません。それはランタイム自体のバージョンです。プロジェクトファイルを編集するだけで、同じマシン上の異なるバージョンの.Net Coreを簡単に切り替えることができます。

.NET Core SDKのバージョン(たとえば、プレビュー2ビルド3131または1.0.3)は、使用できるプロジェクト形式を決定するものです。 SDKプレビュー2はproject.jsonのみをサポートし、SDK 1.0.xはcsprojのみをサポートします。同じマシンに複数のバージョンのSDKをインストールして、両方のプロジェクトフォーマットを同時にサポートすることができます。しかし、それをしたい場合は、global.jsonを使って各プロジェクトのSDKのバージョンを指定する必要があります。

Visual Studioの場合、VS 2015はproject.jsonのみをサポートし、VS 2017はcsprojのみをサポートします(しかし、project.jsonプロジェクトを移行できるはずです)。

これは、私がproject.jsonを使い続けるべき理由がないことを示しています.csprojをサポートする.Net Core SDK 1.0.xはLinuxとWindowsの両方でうまく動作します。

1

csprojベースのツーリングは、.NET Core 1.01.1の両方で動作します。 .NET Core 1.1のサポート(1.0.0-preview2-1-003177)を持つtooling preview2(project.json/xproj)ビルドもあります。

重要な点は、ツールのバージョン管理は現時点の.netコアランタイムのバージョンとは無関係ですが、今後リリースされる2.0リリースはcsprojのみで、ランタイムとツールの両方が2.0バージョンです。

+0

私のdotnet cliバージョンは '1.0.3'、dotnet coreバージョンは '1.1.0'ですが、xsproj'と' project.json'のあるプロジェクトで 'dotnet restore'を使うことはできません。エラーは 'error MSB4019'で、私がGithubの問題をチェックしたときに問題を解決できませんでした。しかし 'dotnet restore'は' csproj'を持っている私の他のプロジェクトにはうってつけです。私の質問には関係しませんが、VS2017でレガシープロジェクトを開くことができず、VS2015で私の更新プロジェクトを開くことができません。エラーなしで実行するには、dotnet cliとcoreの正確なバージョンはどうすればよいですか? – skynyrd

+1

サポートされているツールのバージョン(!)は、VS 2017の一部である1.0+(現在1.0.3)です。VS 2015(および1.0.0プレビュー*)はサポートされなくなりました。 –

関連する問題