使用Visual Studio 2015 ASP.NET Core应用程序使用类库 ASP.NET Core应用程序和类库在项目创建时具有.NET Framework 4.5.2平台 类库具有.NETStandard Library 1.6.0依赖性 此应用程序是否将在.NET Core目标运行时启动,或者它将需要完整的.NET Framework?
以下是一些快照
答案 0 :(得分:1)
根据here .NET Core 1.0实现.NET Standard 1.6。
是的,您的.NET Standard 1.6库与.NET Core应用程序兼容。然而,.NET 4.5.2应用程序不可以使用它,因为还没有.NET框架版本实现1.6。
答案 1 :(得分:1)
根据您附带的屏幕截图,您的类库将仅与.NET Core兼容,并且不需要.NET Framework。
顺便说一下,理解 NETStandard.Library ,NuGet包和“.NET Standard”(目标框架)之间的区别非常重要。
简而言之:
.NET Standard ,目标框架,是API规范。仅针对netstandard1.6的项目尚不是.NET Core应用程序。这是一个非常有用的类比:https://gist.github.com/davidfowl/8939f305567e1755412d6dc0b8baf1b7
NETStandard.Library 是一个包https://www.nuget.org/packages/NETStandard.Library/1.6.0。这实际上是一个元数据包,即它包含许多其他软件包,如System.Collections.Generic和System.Console。这些为C#编译器提供了有关.NET Standard(API规范)中的内容的信息,以便它知道您可以使用哪些API。这意味着可以将“NETStandard.Library v1.6.0”添加为不仅仅是.NET Standard 1.6的依赖项。
此外,仅供参考 - 如果您使用Visual Studio 2017和csproj而不是project.json,则无需在项目文件中列出NETStandard.Library。它可以自动使用。
答案 2 :(得分:1)
要解决此问题,我对NetStandard 1.6.1项目class Foo<T> {
model: T
}
class Bar<T>{
model: T
}
const example3: typeof Foo = Bar; // Okay
执行了以下操作:
csproj