質問: 私は新しいプロジェクトを進めています。最新の.NETコアを使ってやりたいと思います。 ドキュメントを読んで、私はEntity Framework CoreとEntity Framework 6.xの比較を比較しました。 ここに 私が必要とするいくつかの機能: `Spatial Data Type`はEF Coreではサポートされていません。プロジェクトで空間データ型が必要なので、私はそれを使用できません。 ドキュメントをもう一度見て、私は.NET CoreでEF 6.xを使用する方法のこのリンクを見ました: ここ 記事では、( ここに )記載: > Entity Framework 6は.NET Coreをサポートしていないため、プロジェクトを開始する前に、project.jsonで.NET Framework全体をコンパイルするようにしてください。クロスプラットフォームの機能が必要な場合は、Entity Frameworkコアにアップグレードする必要があります。 > > 私はプロジェクトをクロスプラットフォームにする必要はありません。 ### この記事では、ASP.NETコアでEF6を使用する方法についてはあまり明確ではありません。 私は新しい`ASP.NET Core Web Application`を作成しました 次に、Nuget Package Managerを使用してEF6をインストールし、次のエラーが発生しました ![ここに画像の説明を入力](https://i.stack.imgur.com/V4AMv.png) 私が行って、削除`netcoreapp1.0`枠組みからで`project.json`して、コメントを追加`net46`フレームワークとして、EFのエラーを取り除いたが、今私は別のエラーを取得しています。 ![ここに画像の説明を入力](https://i.stack.imgur.com/xsWM5.png) 1. だから私はどのようにASP.NETコアでEF6を使用するのですか? 2. EF6を使用すると、.NET Coreへの参照をすべて削除する必要がありますが、これは.NET Coreを使用していないことを意味しますか?これは、クロスプラットフォームを実行することができます以外の欠点は何ですか?
回答: 2番目のエラーを停止するには、 `project.json` `dependencies`セクションから次のものを削除する必要があります`project.json` : ``` "Microsoft.NETCore.App": { "version": "1.0.0", "type": "platform" } ``` 参考までに、ASP.NET Coreプロジェクトから完全な.NET FrameworkとEntity Framework 6を参照するためのドキュメントには、完全な`project.json`例があります。 .NET Coreへの参照を削除しても、ASP.NET Coreを使用しているわけではありません。 ASP.NETコアプロジェクトが実行するターゲットランタイムプラットフォームのみを変更しています。 完全な.NET FrameworkでASP.NET Coreを使用すると、新しいプロジェクト構造の利点と、Web UIとWeb API(例:統一された`Controller`クラス)を構築するための統一されたストーリーが得られます。また、成熟した完全機能の.NET Frameworkでは、.NET Coreに移植されていない依存関係やNuGetパッケージ(Entity Framework 6など)を使用できます。