ASP.NET 5个概念问题

ASP.NET 5 Conceptual Questions

  1. 如果我从 project.json 中删除 Kestrel 依赖项,我的 Web 应用程序将无法启动。这是否意味着 ASP.NET 5 依赖于 Kestrel?它是 IIS 的替代品吗?

  2. DNX 是 .NET Core 和具有 CLI 功能的 Full .NET 的统称吗?

  3. 在 Windows 中,有 IIS 可托管 ASP.NET 5 个应用程序。 Linux 的等价物是什么?可能是 nginx 或 Apache?

  1. If I remove Kestrel dependency from project.json my web application wont start. Does that mean ASP.NET 5 is dependent on Kestrel? Is it a replacement of IIS?

没有。但是,它需要一台服务器。 HTTP 应用有几层(简化版):

  • 引导:DNX
  • 托管:它知道如何将服务器和您的应用程序连接在一起。
  • 服务器:知道如何处理 HTTP 请求。
  • 应用层:你的应用层。

因此,您可以将服务器替换为任何兼容的服务器,不必是 Kestrel。

  1. Is DNX a collective name for .NET Core and Full .NET with CLI features?

不,它只是加载正确的 CLR 版本并让您启动并运行的引导程序。它可能会被 dotnet CLI 取代。这个故事今天有点模糊,但请留意新公告。

  1. In Windows, there is IIS to host ASP.NET 5 apps. What is the equivalent for Linux? nginx or Apache maybe?

任何适合你的。那甚至可以是 HAProxy。团队可能会有其中之一的样板文件,但最终,一切都取决于您。观看下面的两个视频,它们对服务器故事和 Linux:

有很好的信息