我有一个csproj
文件下面的代码:<TargetFramework>和<RuntimeFrameworkVersion>有什么区别?
<TargetFramework>netcoreapp1.0</TargetFramework>
在NuGet包管理器,它说我有Microsoft.NETCore.App版本1.0.5
现在让我们说我在同一个csproj
文件下面的代码:
<TargetFramework>netcoreapp1.0</TargetFramework>
<RuntimeFrameworkVersion>1.1.4</RuntimeFrameworkVersion>
的NuGet包管理器现在会说,我有Microsoft.NETCore.App版本1.1.4
我基本上是试图.NETCore 2.0之前,使用最新的框架(有一些EF问题,当我转换)这将是.NETCore 1.1.4,但csproj
中的多个Framework属性使我不确定要使用哪个标记。我无法找到明确区分两者之间差异的任何资源。
这是一个梦幻般的答案!先生,干得好。 –
那么,在上面的代码示例中具有两个属性的实际结果是什么? 'RuntimeFrameworkVersion'标签明确规定NuGet所看到的,优先于'TargetFramework'标签。但是,如果我省略了TargetFramework标签,则该项目无法使用* TargetFramework值“无法识别”。它可能拼写错误。如果不是,则必须明确指定TargetFrameworkIdentifier和/或TargetFrameworkVersion属性。* – 8protons
目标框架指定用于编译的包的片段。所以如果你写'foobar1.0',它将无法工作。另外,'RuntimeFrameworkVersion'特定于'netcoreapp'目标框架 –