2017-08-21 6 views
0

私は、Apress「Visual Studio 2017でWebアプリケーションを構築する」を始めました。私は最初にプロジェクトを立ち上げています。 私はSpyStoreというソリューションを設定しました。 その後、SpyStore.DALと呼ばれる.Net Coreコンソールアプリケーション。 次に、SpyStore.Modelsという.NET標準クラスライブラリプロジェクト。.Net Standardと.NET Coreプロジェクトを1つのソリューションでミックスする理由は何ですか?

私の質問は、なぜ.NET Frameworkクラスライブラリの.NET標準クラスライブラリを選択するのかということです。違いはありますか?

.Net Standardと.Net Coreの違いは何ですか? 突然スタンダードを混ぜる理由がありますか?

答えて

3

.netstandardを一連のAPIとして視覚化することができます。これはnetframework(例えばnet461、net47モニカなど)やnetcore(netcoreapp)などの複数のランタイムで実装されています。libは実行可能ファイルではないため、具体的な実装とは独立しています。

ライブラリを.netフレームワークプロジェクト(または.net標準の他の実装)で使用したい場合は、netstandardをターゲットにして、netcoreapp libのみがこれらの実装に完全に移植可能であることを確認しますnetcoreappプロジェクトからターゲット設定可能です。それはあなたがここにもっとに関する情報を見つけることができます

フレームワークの実装に依存し、として

アプリは唯一、netcoreappまたはnetcoreとすることができるnetstandardのバージョンのプラットフォームの実装: https://docs.microsoft.com/dotnet/standard/net-standard

+0

はありがとう - これは非常に有益な答えです。なぜ私は彼がその本で言わなかったのか分かりません。彼は読者に2つの.Netコアプロジェクトを作ってから、青い.NET標準プロジェクトから作ります。さらに、本のスクリーンショットでは、標準プロジェクトがコアのテンプレートとして用意されていますが、現在はProject - > Newの標準の下にあります。私はちょうどVS 2015、コア1.0で6ヶ月のプロジェクトを完了しました。私は間違いなくスタンダードと混同していました。私はそれがすべて働いているまで私はちょうど振り回された。しかし、この答えは間違いなく私が一緒に従っている間に役立ちます。 – Sam

+0

.netcore 2.0(およびnetstandard 2.0)は1〜2週間前にリリースされました。 ネットスタンダード2.0アプリ(およびネットコアアプリ)は、古典的なネットフレームワークをターゲットとするナゲットを参照できるようになりました(netstandard 2.0のapiが非常に多いため、NuGet.orgのパッケージの70%が適切に動作するはずです) : https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-core-2-0/ – Treziac

関連する問題