ASP.NET 5 and .NET Core RC 准备投入使用

  • Pierre-Luc Maheu
  • 姚梦龙

2015 年 12 月 9 日

话题:.NET语言 & 开发架构

微软最近发布了.NET Core 和 ASP.NET 5 的发布候选版本,可运行在 Windows,OS X 和 linux 上。微软宣布 这个发布版已准备好投入使用,并将会支持它。两个发布候选版本都是经过深思熟虑的特性,并且都支持 Windows,OS X 和 linux。不过在最终发布前,小的特性依然会加入。

ASP.NET 5 在 IIS 上的破坏性的改变

因为 ASP.NET 5 的架构和它的前身在一些方面是不同的,所以将一个 ASP.NET 5 web 应用发布到一个 IIS 服务器前,我们还需要做一些事。HTTP 平台处理器必须被安装到 web 服务器上,还有一些附加的配置步骤可能也是需要的。

ASP.NET 5 在 Visual Studio 上的一些特性

Visual Studio 有了两个和 ASP.NET 的 UI 部分有关的新特性。第一个将Bootstrap Snippets作为 ASP.NET 5 项目推荐的编辑 HTML 和 CSHTML 页面的扩展。这个扩展提供了一个包含 40 个 HTML 片段的集合,它们都可以在 Visual Studio 的工具箱中查到。

Bower,微软为 CSS 和 JavaScript 等客户端内容的包管理器创建了新 UI. 它的用户界面和 Nuget 相像,但它管理的是客户端工具库。

ASP.NET 5 运行环境

DNX——或者说.NET 运行环境——是一个用来构建和运行.NET 应用的 SDK。它主要的目的是简化跨平台应用的开发。它也使得.NET 项目运行在 Mono,.NET 和.NET Core 等不同运行环境上成为可能。RC1 在主机设置上带来了一个小的改变,主机设置成为了应用的一个显式的部分。这个改变带来了更大的扩展性,同时也为指定一个不同的主机或者在初始化 DNX 主机前调用一些代码提提供了可能。下面的例子展示了使用 C# 6 的表达式方法体语法调用主机。

public static void Main(string[] args) => WebApplication.Run(args);

.NET Core 运行环境和 BCL

RC1 为很多运行时组件和库提供了 linux 和 OSX 支持。

  • CoreFX,.NET 核心基础库像 System.Collections 的实现
  • 最大路径限制的移除,这意味着.NETCore APIs 不再存在着 260 字符的限制
  • 在 Linux 和 OS X 的 RyuJIT 支持
  • 在 Linux 支持 LLDB 和 SOS
  • 对于调试器和奔溃转存这些异常处理的整合
  • 对于 Linux 和 OSX 提供 GC/ 线程挂起
  • 对于 Linux 通过 LTTNG 提供本地事务支持

.NET 核心库

SqlClient 是被移植到.NET Core,支持 Windows OS X 和 Linux。虽然客户端工作在所有平台,但 RC1 还不支持完整的特性。几个 Azure 库也被移植到.NET Core,包括:

  • Windows Azure Storage
  • Microsoft.Azure.Graph.RBAC
  • Microsoft.Azure.Management.Compute
  • Microsoft.Azure.Management.Network
  • Microsoft.Azure.Management.Storage
  • Microsoft.Azure.Management.Resources
  • Microsoft.Azure.Management.WebSites

ASP.NET 5 对于 Windows,Linux 和 OSX 平台的安装包可以在官方网站ASP.NET website上获得。ASP.NET.NET Core的源代码和文档都被存放在了 GitHub 上。


感谢徐川对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

.NET语言 & 开发架构