ASP.NET 5 Beta5来了(翻译)
在6月30日微软发布了ASP.NET 5 Beta5,我们可以从http://nuget.org上获取Beta5 的packages。
随着VS2015RC发布的ASP.NET 5的版本号是Beta4,所以你一定想在你的项目里使用这个更新。Beta5上不但修正了之前的一些问题并有了很多改进,而且还新增了很多功能。
很重要一点,我们应该知道有ASP.NET的运行时(用来运行你的网络应用)和Visual Studio上Web 工具(比如HTML、JavaScript编辑器和新文件对话框)。Beta5是对ASP.NET 5运行时的更新。
ASP.NET 5 可以运行在全功能的.NET库和核心库。.NET核心库能够运行在Windows,Azure,Linux和Mac上。是时候开始安装beta5并应用到你的ASP.NET 5项目中去。
下面是Beta 5的一些亮点:
.NET执行环境(DNX)
- 支持Nuget v3。
使用Nuget v3的路径可以更快地下载packages。尝试添加https://api.nuget.org/v3/index.json作为package源。 - 支持全新的.NET目标框架监测器(TFM)。
- 在project.json中可以设置语言和发布说明的链接
- 消除了对JSON.NET的固定版本要求:即不再要求你的应用程序使用和DNX一致的JSON.NET版本,你可以选择新发布的JSON.NET而不需要升级DNX的版本号。
- 新的IRuntimeEnvironment服务。使用新的Service可以获取到运行时具体信息,像OS,CLR等。
ASP.NET 5
- HttpContext.Connection
通过HttpContext的新加Connection属性可以获得连接的信息。 - 新增本地化的抽象和中间件
你可以在本地化的Sample里发现这些东西的使用。 - 统一终止ASP.NET宿主环境的快捷键为Ctrl+C
之前按任意键即可终止ASP.NET宿主环境的,现在统一终止快捷键为Ctrl+C。
- 在Razor支持C# 6
你可以通过MSDN上C# 6 了解C# 6的新特性。 - 简化了MVC的选项设置,添加了顶级配置
现在有了应用层的设置,可以用来为HTML helpers配置各种不同的设置。 - 在视图中可以使用JSON Helper来序列化数据模型
该功能可以让你在Razor view中非常容易地序列化你的.NET对象成JSON格式:@Json.Serialize(Model)
- 在Route标记中能够使用通配替换
[Route("Products/[action]", Name = "[actions]Products")]
public class ProductsController
{
public void Add() { }
public void Buy() { }
} - 新的ImageTagHelper
<img asp-file-version="true" src="~/images/my_cool_image.png" />
- Tag Helper支持绑定字典属性
现在你可以在TagHelpers中绑定服务器端的attributes到字典属性。比如,AnchorTagHelper利用名字格式为asp-route-*的attributes来设置路由值。<a asp-action="Edit" asp-route-id="@index">Edit</a>
- Tag Helper支持基于服务端attributes设置的条件绑定
你可以利用TargetElementAttribute中Attributes属性来指定当前TagHelper应用到拥有某些attributes的tag上。比如AnchorTagHelper类的定义如下:[TargetElement("a", Attributes = ActionAttributeName)]
[TargetElement("a", Attributes = ControllerAttributeName)]
[TargetElement("a", Attributes = FragmentAttributeName)]
[TargetElement("a", Attributes = HostAttributeName)]
[TargetElement("a", Attributes = ProtocolAttributeName)]
[TargetElement("a", Attributes = RouteAttributeName)]
[TargetElement("a", Attributes = RouteValuesDictionaryName)]
[TargetElement("a", Attributes = RouteValuesPrefix + "*")]
public class AnchorTagHelper : TagHelper
{
private const string ActionAttributeName = "asp-action";
private const string ControllerAttributeName = "asp-controller";
private const string FragmentAttributeName = "asp-fragment";
private const string HostAttributeName = "asp-host";
private const string ProtocolAttributeName = "asp-protocol";
private const string RouteAttributeName = "asp-route";
private const string RouteValuesDictionaryName = "asp-all-route-data";
private const string RouteValuesPrefix = "asp-route-";
private const string Href = "href"; ...
}从上面可以看出,该TagHelper会应用到A tag上,并且这个tag上需要有asp-action, asp-controller, asp-fragment, asp-host, asp-protocol, asp-route, asp-all-route-data和asp-route-*这些attributes中一个或一个以上,否则该tag就会绑定到该TagHelper。比如
<a href="http://www.cnblogs.com/liontone/">上善若水</a>
就不会被应用上AnchorTagHelper。
大家可以在这里看到比较关于Beta5的详细的信息以及关于Beta5已知的问题。后续也会有更多的beta版本发布知道最终正式发布为止。
Beta5和Visual Studio 2015 RC是兼容的,你可以利用Visual Studio 2015 RC来打开、编译和运行基于Beta5运行库的ASP.NET 5应用。
在Visual Studio 2015RC上升级到Beta5需要做一下几步:
- 如果之前没有安装,请安装 .NET Version Manager (DNVM)。如果已经安装了Visual Studio,请忽略这一步,直接进入下一步。
- 设置系统环境变量DNX_FEED值为https://www.nuget.org/api/v2
- 执行“dnvm upgrade”,升级dnx的版本号到Beta5
- 更新应用中的global.json文件的sdk版本号到"1.0.0-beta5"(DNX)
- 更新应用的依赖库的版本号到beta5
- Restore新版本的依赖库
- 编译应用并根据beta5的需要做相应的migration.
在beta5还有一些break changes,更详细的信息请参考Beta5 Release Note,希望大家能够喜欢Beta5。
ASP.NET 5 Beta5来了(翻译)的更多相关文章
- .NET跨平台之旅:将示例站点从ASP.NET 5 Beta5升级至Beta7
9月2日,微软发布了ASP.NET 5 Beta7(详见Announcing Availability of ASP.NET 5 Beta7).其中最大的亮点是dnx已经可以完全基于CoreCLR运行 ...
- .NET跨平台之旅:借助ASP.NET 5 Beta5的新特性显示CLR与操作系统信息
今天在 MSDN 博客上看到了 ASP.NET 5 Beta5 的发布消息(详见 ASP.NET 5 Beta5 Now Available),从中知道了 2 个新特性: 1. DNX: New IR ...
- ASP.NET 5 Beta5 对TagHelper带来的变化
最近做的TagHelper项目要从原来的ASP.NET 5 Beta 4升级到Beta 5,特地整理了升级后的变化: 新增ImageTagHelper <img asp-file-version ...
- ASP.NET 5 Beta6发布了(翻译)
感觉就好像我们刚刚发布了一个版本,现在我们又要发布一个新的版本.开发团队通过努力工作在Visual Studio2015的正式版上提交使用ASP.NET 5开发工具的上的更新以及库的更新.新的版本为b ...
- Web API 2 入门——使用Web API与ASP.NET Web窗体(谷歌翻译)
在这篇文章中 概观 创建Web窗体项目 创建模型和控制器 添加路由信息 添加客户端AJAX 作者:Mike Wasson 虽然ASP.NET Web API与ASP.NET MVC打包在一起,但很容易 ...
- 大话ASP.NET(第二篇,Angular结构篇--翻译)
AngularJS API Docs Welcome to the AngularJS API docs page. These pages contain the AngularJS referen ...
- ASP.NET 5运行时升级到Beta5
在Visual Studio 2015 RTM和Windows 10正式发布之前,微软把开源.NET升级到了beta5,带来了一些增强和改变.和Visual Studio 2015 RC一起安装的AS ...
- [翻译]ASP.NET Web API 2 中的全局错误处理
目录 已存在的选项 解决方案预览 设计原则 什么时候去用 方案详情 示例 附录: 基类详情 原文链接 Global Error Handling in ASP.NET Web API 2 由于翻译水平 ...
- [中文翻译] ASP.NET 5 简介(Introducing ASP.NET 5,原作ScottGu 2015/2/23)
本文出处 [中文翻译] ASP.NET 5 简介(Introducing ASP.NET 5,原作ScottGu 2015/2/23) 这是我的文章备份 http://www.dotblogs.co ...
随机推荐
- [你必须知道的.NET]第二十三回:品味细节,深入.NET的类型构造器
发布日期:2008.11.2 作者:Anytao © 2008 Anytao.com ,Anytao原创作品,转贴请注明作者和出处. 说在,开篇之前 今天Artech兄在<关于Type Init ...
- Templated Helper Methods
1.Model 2.HomeController 3.CreatePerson.cshtml 禁用了客户端验证 4.Using Templated Helper Methods Editor 和 Ed ...
- DotNetOpenAuth实践之WebApi资源服务器
系列目录: DotNetOpenAuth实践系列(源码在这里) 上篇我们讲到WCF服务作为资源服务器接口提供数据服务,那么这篇我们介绍WebApi作为资源服务器,下面开始: 一.环境搭建 1.新建We ...
- 【LOJ】 #2015. 「SCOI2016」妖怪
题解 这道题教会我很多东西,虽然它是个傻逼三分 1.long double的运算常数是巨大的 2.三分之前的界要算对!一定要算准,不要想一个直接写上! 3.三分100次也就只能把精度往里推20多位,可 ...
- 【LOJ】 #2008. 「SCOI2015」小凸想跑步
题解 一道想法很简单的计算几何(由于我半平面交总是写不对,我理所当然的怀疑半平面交错了,事实上是我直线建错了) 首先我们对于两个凸包上的点设为\((x_0,y_0)\)和\((x_1,y_1)\)(逆 ...
- Deepin 2015 安装后找不到win10 启动选项的解决办法
#sudo vi /boot/grub/grub.cfg 在export linux_gfx_mode后面加 menuentry "Windows 10 (loader)" --c ...
- LoadRunner常用函数汇总
LoadRunner命令汇总 . 命令行分析函数 (1)lr_get_attrib_double() 检索脚本命令行中使用的double类型变量 (2)lr_get_attrib_string() 检 ...
- Java SHAA加密
package com.util; import java.security.MessageDigest; /** * 采用SHAA加密 */ public class SHAUtil { /*** ...
- JMS介绍:我对JMS的理解和认识
[ZT]JMS介绍:我对JMS的理解和认识 转自:http://blog.csdn.net/KimmKing/archive/2011/06/30/6577021.aspx,感谢作者KimmKing ...
- 【UOJ #104】【APIO 2014】Split the sequence
http://uoj.ac/problem/104 此题的重点是答案只与切割的最终形态有关,与切割顺序无关. 设\(f(i,j)\)表示前\(i\)个元素切成\(j\)个能产生的最大贡献. \(f(i ...