2017-08-17 71 views
1

.net Core或“clean”.net for greenfield web project?.net Core或“clean”.net for greenfield web project?

经过Google搜索了一下,但没有真正找到答案,我是否应该为.net核心或“普通”.net为绿地Web项目? 鉴于(重要!)其项目(HTML UI + mvc + db)多数民众赞成从来没有会运行在任何东西,但Windows + IIS。永远。期。

对于经典.net是所有我知道的东西(各种Nuget Libs),它有我需要的一堆功能。 .Net核心是??? (假设我不需要这个项目中的任何跨平台的东西。

什么混淆我是(在项目方面,我已经勾勒)

  1. 如果对.NET核心是由MS意味着在未来取代“经典”。NET?或者并肩而生?
  2. 核心(最终)是否包含经典+更多,或反之亦然的所有东西?

有一些是在这些职位是某种感动 Target .NET4.6 or .NET Core 1 for greenfield development? 但是那之前新的。核心2.0出来了,所以我重新审视这个问题

:)

+4

这将是基于意见的,所以在这里不太合适。但是,您必须清楚您可能使用的其他库。如果这些库在.NET核心中工作,那么你可以考虑使用它。否则,请保持完整的.NET框架。 –

+0

它很害怕得到“以意见为基础”的标签(并以某种方式表示同意),但是从Google搜索得到的大多数答案都集中在跨平台问题/好处等方面,所以我希望我的问题可能会提出问题/要点我没有考虑过(只给出“一个平台”-context):) –

+3

如果你需要跨平台,那么你肯定需要.NET核心(你可以做单声道,但为什么打扰)。如果你不需要xplat,并且它是绿色环保的,我个人认为是以.net core开头..它可能需要继续努力......但是.net core 2.0他们已经增加了一大堆新的API来自.net 4.x,所以它应该更容易。 –

回答

1

我的建议是去“干净”。净。也许你会使用一些目前不可用于.NET Core的技术,库或NuGet包。

3

如果.Net Core是MS的意思,将来会取代“经典”.Net。或者并肩而生?

.NET核心被设计为非常并排(.NET Framework主要是就地)。

核心(最终)是否包含经典+更多,或反之亦然的所有东西?

不,没有计划让.NET Core成为.NET Framework(WinForms等)的100%超集。也没有计划使.NET Framework成为.NET Core的100%超集(某些API可能更侧重于跨平台,并且在.NET Framework中没有意义,有些API可能是半实验性的,并且未声明通过召集)

.net核心或“干净”.net为绿地网站项目?

.NET核心和.NET Framework可以(松散地)被认为是一个启动和一个megacorp。

如果.NET Core在主服务器中进行了修复,那么您可以选择移至修复它的每日生成。如果.NET Framework进行了修补程序,它会在下一个版本中出现,或者在某些补丁周二发布。当.NET Core 2.1(或任何下一个数字结束时)出来时,它具有你想要的功能,即使在一个虚拟主机公司,你也可以马上移动它。 .NET Framework 4.7.1目前处于预览状态,但您可能无法使用4.7。1功能通过虚拟主机公司,因为他们还没有安装它......他们可能不会在4.7.1发布后公布一段时间。

在.NET Core中,您可以制作一个API提案,查看它是否经过审阅过程,然后自己写或等待它出现,然后(如果您愿意)从日常构建中使用它。 .NET Framework稍微慢一点,有条不紊,很高兴让年轻的兄弟姐妹冒险尝试新的API。

.NET Core 1.0(2016年6月)添加了使用显式曲线导出和导入ECDSA密钥的支持。 .NET Framework 4.7(2017年4月,延迟10个月)获得了该功能,并且可能具有.NET Core 1.0 - > .NET Framework 4.7.1(14个月滞后和计数)以及(至于I可以告诉)ValueTask已添加到.NET Core 1.0中,而不在.NET 4.7.1-Preview中。另一方面,.NET Framework可能具有更好地匹配所需内容的部署模型,并且具有“更多”(但不是“更多”)API可用。

所以,这是一个折衷。你需要决定什么对你很重要。