ASP.NET Core 1.0.1应用程序定位.NET 4.6.x

时间:2017-01-05 19:15:33

标签: .net entity-framework asp.net-core entity-framework-6 .net-core

今天我决定使用Visual Studio 2017 RC Empty模板创建一个新的ASP.NET Core 1.0.1应用程序。应用程序运行,一切顺利。请注意,这是我第一次使用全新的.NET Core。

然后我决定使用EntityFramework 6.x而不是EF Core,因为我必须使用Oracle而不是SQL Server。不幸的是,我花了几个小时查看文档,博客文章和StackOverflow问题,但我仍然无法让它工作。

从我读过的内容来看,ASP.NET Core开始时有一个project.json文件,然后被弃用(如果我错了,请纠正我......)以及所有文档和内容在线似乎使用此文件提出解决方案。

因此:

  1. 目标是.NET框架的多个版本(Core和 4.6.x)现在仍然可以将project.json消失?如果是这样,怎么样?
  2. 我还能使用project.json吗?!
  3. 更新

    我面临的一些问题如下:

    • 我创建了一个名为" Shared"的类库。该项目的类型是.NET Standard。我在ASP.NET Core应用程序中引用它并且它工作正常。然后我从一个针对.NET 4.5.2的Web应用程序引用它,我收到了这个错误:Project Shared is not compatible with net452 (.NETFramework,Version=v4.5.2) / win7-x86. Project Shared supports: netstandard1.4 (.NETStandard,Version=v1.4)
    • 我尝试将EntityFramework 6.x Nuget包安装到ASP.NET Core应用程序中,但是我收到此错误:One or more packages are incompatible with .NETCoreApp,Version=v1.0.

    我想如果有人能指出我在哪里阅读可靠/最新的文档,这将是一个很好的方向。我需要了解这是什么以及为什么会这样,所以我可以从那里拿走它。

1 个答案:

答案 0 :(得分:2)

  

定位.NET框架的多个版本(Core和4.6.x)   现在,project.json已经消失了吗?如果是这样,怎么样?

您可以在 csproj 中指定多个版本,如下所示 -

例1:

<TargetFrameworks>netcoreapp1.0;net452</TargetFrameworks>

例2:

<TargetFrameworks>netcoreapp1.1;net462</TargetFrameworks>

请参阅Cross-targeting部分。

  

我还能使用project.json吗?

您可以使用dotnet migrate命令轻松迁移。此命令从现有project.json生成完全相同的csproj文件。

请参阅Project Migration部分。