Are both of them Cross Platform or only the console which is using .NET Core? 是的,它们都是跨平台的 .
And should I avoid using Class libraries in this case? 不,无论何时都可以使用类库 . 这不是微软一开始的初衷,但他们后来改变了主意,所以并非所有软件包都与.net标准兼容,这就是为什么你不能使用net标准版本来 Build 一个脚手架项目,因为"Microsoft.EntityFrameworkCore.Tools"在moment只与Net core兼容,但很快就会与DotNet Standard兼容
1 回答
"So why they are both under .NET Core but referencing different libraries?"
用于创建库的推荐.NET版本现在是Net Standard Library . 这就是为什么创建类库时的默认值是净标准版本而不是Net Core . 您可以手动更改但不建议另请参阅此博客文章关于Introducing .NET Standard Library .
Are both of them Cross Platform or only the console which is using .NET Core?
是的,它们都是跨平台的 .
And should I avoid using Class libraries in this case?
不,无论何时都可以使用类库 . 这不是微软一开始的初衷,但他们后来改变了主意,所以并非所有软件包都与.net标准兼容,这就是为什么你不能使用net标准版本来 Build 一个脚手架项目,因为"Microsoft.EntityFrameworkCore.Tools"在moment只与Net core兼容,但很快就会与DotNet Standard兼容
正如我所说,如果你真的想保留脚手架选项,那么你可以使用类库项目并在project.json .net版本中手动更改,然后一旦兼容你可以切换回.net标准 . 您的其他项目(如服务或数据层)取决于您希望如何保持分离,可以是具有dotnet标准的类库,它们将能够正常工作 .
或者您可以从原始解决方案中获得一个控制台应用程序(.net core)appart,并使用.net标准将其复制并粘贴到您的真实类库中 . (这是我们目前在项目中所做的事情)