我正在将我的应用程序从VS2015移植到VS2017并尝试找出正确的迁移路径。我也将我的Web服务移动到.NET Core,以利用部署到Linux或Windows服务器。我看到我可以选择在.NET Standard或.NET Core中创建基本库。 .NET Core库是否有任何优势,或者我应该在.NET Standard中默认创建基本库吗?
答案 0 :(得分:5)
实际上,.NET Standard 2.0是.NET Framework 4.6.2(-ish)和.NET Core 2.0的交集。
如果您构建一个面向.NET Standard 2.0的库,那么您的库可以被.NET Framework库和应用程序以及.NET Core库和应用程序使用。这是标准的优势。
但是有几种类型/成员已添加到.NET Core中,不是 .NET Standard的一部分。如果你想使用类似新的CertificateRequest类的东西,你需要明确地以.NET Core为目标。
.NET Core允许新用户比.NET Framework更快地获得用户,因此一般的权衡将始终是“.NET Standard =>更多地方; .NET Core =>更新的东西”。
答案 1 :(得分:-2)
.Net Standard
只是带有接口的包,可用于提供.Net Framework
,.Net Core
和others
答案 2 :(得分:-2)
我不会选择.NET Core库。不同之处在于引用的库:
netcoreapp软件包还包括一些.NET标准软件包,还有一些特定于.NET Core App的软件包(包括libuv。不知道库需要libuv的原因。)
因此,.NET标准库适用于跨平台,而.NET Core库适用于.NET Core