简体   繁体   English

下一个MVC 6是否是ASP.NET 4.6或ASP.NET Core 1.0或两者的一部分?

[英]Will the next MVC 6 be part of ASP.NET 4.6 or ASP.NET Core 1.0 or both?

I am mostly interested in the unified Web API in MVC 6 for building restful services. 我最感兴趣的是MVC 6中用于构建restful服务的统一Web API。 However I am a bit confused at the moment on how these components fit together. 但是,目前我对这些组件如何组合在一起感到困惑。 When building a new app with the latest Visual Studio 2015, MVC 6 is available as an ASP.NET 5 template. 使用最新的Visual Studio 2015构建新应用程序时,MVC 6可用作ASP.NET 5模板。 My understanding is that ASP.NET 5 is now ASP.NET Core 1.0. 我的理解是ASP.NET 5现在是ASP.NET Core 1.0。 What does this mean for MVC 6 and how will it be supported in the future? 这对MVC 6意味着什么?将来如何支持? Will it be part of the ASP.NET Core 1.0, ASP.NET 4.6 or both? 它是ASP.NET Core 1.0,ASP.NET 4.6还是两者的一部分? Could someone please explain how these components fit together? 有人可以解释这些组件如何组合在一起吗? Thanks! 谢谢!

ASP.NET Core is the unification of MVC and WebApi. ASP.NET Core是MVC和WebApi的统一。

It can run on the .NET Core framework or on the .NET full desktop framework. 它可以在.NET Core框架上运行,也可以在.NET完整桌面框架上运行。

The MVC design pattern is still there but there is less reason to call it "MVC" when talking about it. MVC设计模式仍然存在,但在谈论它时,没有理由将其称为“MVC”。 In the old days we talked about "MVC" to distinguish it from other things like WebForms or WebPages, but ASP.NET Core doesn't have those other things so calling it "MVC" is not really necessary. 在过去,我们谈到“MVC”,以区别于其他东西,如WebForms或WebPages,但ASP.NET Core没有其他东西所以称之为“MVC”并不是真的有必要。 It was earlier called "MVC 6" but that was before everything got renamed to ASP.NET Core. 它之前被称为“MVC 6”,但在将所有内容重命名为ASP.NET Core之前。

You can find a good explanation here: ASP.NET 5 is dead - Introducing ASP.NET Core 1.0 and .NET Core 1.0 你可以在这里找到一个很好的解释: ASP.NET 5已经死了 - 介绍ASP.NET Core 1.0和.NET Core 1.0

In few words: 简而言之:

  • ASP.NET 4.6 is the newest version of the ASP.NET we have known so far. ASP.NET 4.6是迄今为止我们所知道的ASP.NET的最新版本。 This version is available right now. 此版本现已上市。
  • ASP.NET 5 was going to be the name of something that wasn't a newer version of the ASP.NET we've used so far. ASP.NET 5将成为我们迄今为止使用的ASP.NET的新版本。 SO Microsoft decided to rename it as ASP.NET Core 所以Microsoft决定将其重命名为ASP.NET Core
  • MVC 6 was the name of the MVC included in ASP.NET 5, so this name no longer make sense MVC 6是ASP.NET 5中包含的MVC的名称,因此这个名称不再有意义

One of the characteristics of ASP.NET Core is that, as you're asking, the MVC and Web API controllers are unified (which aren't on ASP.NET 4.6). ASP.NET Core的一个特点是,正如您所要求的那样,MVC和Web API控制器是统一的(不在ASP.NET 4.6上)。 But another very interesting thing is that ASP.NET Core runs on OSX, Linux and Windows, and there are available tools to develop thiskind of projects on these 3 platforms. 但另一个非常有趣的事情是ASP.NET Core在OSX,Linux和Windows上运行,并且有可用的工具来在这3个平台上开发这些项目。

ASP.NET Core runs on .NET Core (previously named .NET 5), which is a "reduced" version of the .NET CLR that runs on OSX, Linux and Windows. ASP.NET Core在.NET Core(以前称为.NET 5)上运行,这是在OSX,Linux和Windows上运行的.NET CLR的“简化版”。

ASP.NET Core is already incomplete: it doesn't include SignalR or Web Pages so far, but it expected in the future. ASP.NET Core已经不完整了:它到目前为止还没有包含SignalR或Web Pages,但预计将来也会如此。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM