ASP.NET5 beta8现已上都的NuGet作为一个工具升级到Visual Studio2015!此版本极大地扩展.NET核心对OS X和Linux所支持的范围。您现在可以使用网络,加密和全球化特点的跨平台!本新闻稿也包括ASP.NET5,DNX和Web工具的一些不错的改进。让我们来看看我们如何开始使用ASP.NET5 beta8。

新功能

下面是一些在ASP.NET5 beta8新功能的摘要。对于什么是新的完整列表在此版本中,请参阅beta8发行说明。

更改IIS托管模式

我们已经取得了重大更新,以beta8托管模式ASP.NET 5 IIS。直至并包括β7整联蛋白,在IIS运行ASP.NET 5应用已经举办了一个名为“太阳神”组成,包含在Microsoft.AspNet.Server.IIS包。使用现有的System.Web托管模式钩子该组件促进DNX和CLR的引导。这个钩子取代了运行应用程序已经开始(但从IIS的角度)之后。这实际上提出了“太阳神”第二DNX主机,这意味着它包含在它自己的逻辑有关定位,启动,并加载运行。这也意味着第二组逻辑来使像运行时服务,以及某些DNX级设置的配置。

具有用于ASP.NET 5两种不同宿主模型引入了许多复杂性和矛盾的难以或不可能解决的。为了解决这个问题,我们正在中止“太阳神”IIS主机。托管ASP.NET 5应用程序在IIS现在将使用配置为通过转发到ASP.NET 5红隼服务器的IIS HttpPlatformHandler实现。该HttpPlatformHandler是一个需要通过在运行的服务器IIS(安装:86,64)的管理员安装了一个本地IIS模块。它也已经包含在IIS上快速地方发展beta8网络工具的更新。此本机的IIS模块管理的外部应用程序的主机过程的发起(在此情况下dnx.exe)和从IIS请求到托管进程的路由。

简化模型到一个托管选项(但仍支持在同一场景)用于开发人员的代码和测试更少的东西。新模式的其他好处包括:

在IIS程序池不需要运行任何托管代码(你可以从字面上将其配置为不加载CLR的话)
    现有的ASP.NET Windows组件并不需要安装在Windows服务器上运行
    现有的ASP.NET 4.x的模块可以在IIS旁边的HttpPlatformHandler运行以来,ASP.NET 5的过程是独立的
    您可以按进程设置环境变量,因为HttpPlatformHandler支持。这将使设置的东西像ASP.NET 5环境配置可能在本地IIS服务器。
    统一的错误处理在所有服务器启动错误
    守则和行为统一
        在.NET框架(全CLR)是否运行时,支持的app.config自托管或在IIS中(即使是用于.NET Framework的兼容性没有更多的web.config)
        统一服务的故事
        统一启动时的故事(无奇AspNetLoader.dll在bin文件夹)

你会发现,在Visual Studio中的ASP.NET 5项目模板已被更新,包括在应用程序中的wwwroot文件夹下面的web.config文件:

<configuration>
<system.webServer>
<handlers>
<add
name="httpPlatformHandler"
path="*"
verb="*"
modules="httpPlatformHandler"
resourceType="Unspecified"/>
</handlers>
<httpPlatform
processPath="%DNX_PATH%"
arguments="%DNX_ARGS%"
stdoutLogEnabled="false"
startupTimeLimit=""/>
</system.webServer>
</configuration>

这个web.config文件添加HttpPlatformHandler到您的应用程序和配置的处理程序将请求转发给一个DNX的过程。 Visual Studio的手柄设置的DNX_PATH环境变量指向适当的DNX版本为您的应用程序。

当您发布的应用程序在web.config中的流程路径更新为指向您的应用程序中定义的“网络”命令。您可以选择使用不同的命令运行DNU发布时使用,而不是--iis命令选项。

有关这些更改IIS托管模式的详细信息,请参见相应的公告。
本地化

ASP.NET 5现在已经内置了对本地化支持。新的本地化支持提供中间件,用于指定根据请求,也机制,根据当前文化访问本地化的内容正确的文化和UI文化的线程上。

启用定位在应用程序中加入要求的定位中间件在你的启动类的请求管道:

app.UseRequestLocalization(选项)

请求定位中间件使用一组已配置IRequestCultureProvider实现的,以确定培养的请求。内置的提供者可以从请求使用Accept-Language头,一个查询字符串值,或从cookie确定培养。您也可以建立并指定自己的IRequestCultureProvider。

一旦请求国产化中间件来确定当前的文化它设置它的线程上。该IStringLocalizer服务则提供了访问基于当前区域性本地化的内容。启用这些本地化服务,像这样的支持:

services.AddLocalization(options => options.ResourcesPath = "resources");

该ResourcePath指定了本地化资源位于相对于应用程序根目录的路径。您可以使用IStringLocalizerFactory服务,创建一个IStringLocalizer特定资源或者干脆<T>直接请求IStringLocalizer。

这些服务的默认实现是基于System.Resources.ResourceManager,它支持访问的基础上RESX文件附属程序本地化内容。您也可以提供自己的实现从不同来源获取本地化的内容,比如形成一个数据库。

你可以看到,在本地化回购这些本地化功能完整的工作样本。
本地化和MVC

MVC建立在ASP.NET 5新的本地化支持,使本地化的控制器和视图。 MVC引入一小本地化建立在核心本地化服务的附加服务。

为了使MVC特定的本地化功能,您可以添加配置MVC服务时以下几点:

services
.AddMvc()
.AddViewLocalization(options => options.ResourcesPath = "Resources");

该IHtmlLocalizer服务(附有IHtmlLocalizerFactory)增加了对获得本地化的HTML字符串和属性编码的论据支持。您可以使用IHtmlLocalizer从你的控制器是这样的:

private IHtmlLocalizer<HomeController> SR;

private IHtmlLocalizer<HomeController> SR;

public HomeController(IHtmlLocalizer<HomeController> localizer)
{
_localizer = localizer;
} public ActionResult Index()
{
ViewData.Message = SR["Localize me!"];
return View();
}

所述IViewLocalizer是一个IHtmlLocalizer服务,查找基于当前视图名称的资源。您可以使用@注入指令,这样注入的IViewLocalizer到您的看法:

@inject IViewLocalizer SR

<h1> @SR["Localized header"]</h1>

除了以上这些还有可以查看被隐藏的文件等:

这在Beta8版本之前是不可以的。

想了解更多beta8的朋友可以在微软的.NET Web开发工具博客上查看纤细说明文章:

http://blogs.msdn.com/b/webdev/archive/2015/10/15/announcing-availability-of-asp-net-5-beta8.aspx。

ASP.NET5 Beta8可用性的更多相关文章

  1. ASP.NET5 Beta8

    ASP.NET5 Beta8 ASP.NET5 beta8现已上都的NuGet作为一个工具升级到Visual Studio2015!此版本极大地扩展.NET核心对OS X和Linux所支持的范围.您现 ...

  2. 从ASP.NET 升级到ASP.NET5(RC1) - 翻译

    前言 ASP.NET 5 是一次令人惊叹的对于ASP.NET的创新革命. 他将构建目标瞄准了 .NET Core CLR, 同时ASP.NET又是对于云服务进行优化,并且是跨平台的框架.很多文章已经称 ...

  3. [转]asp.net5中使用NLog进行日志记录

    本文转自:http://www.cnblogs.com/sguozeng/articles/4861303.html asp.net5中使用NLog进行日志记录 asp.net5中提供了性能强大的日志 ...

  4. asp.net5中使用NLog进行日志记录

    asp.net5中提供了性能强大的日志框架,本身也提供了几种日志记录方法,比如记录到控制台或者事件中等,但是,对大部分程序员来说,更喜欢使用类似log4net或者Nlog这种日志记录方式,灵活而强大. ...

  5. 让ASP.NET5在Jexus上飞呀飞

    就在最近一段时间,“Visual Studio 2015 CTP 5”(以下简称CTP5)发布了,CTP5的发布不仅标志着新一代的VisualStudio正式发布又向前迈出了一步,还标志着距离ASP. ...

  6. 为支持ASP.NET5跨平台,Jexus再添新举措

    Jexus作为一款运行于Linux/FreeBSD平台上,以支持ASP.NET著称的高性能HTTP服务器和反向代理服务器,继5.6版完成对OWIN标准应用的支持后,就把着力点放到了对ASP.NET5的 ...

  7. ASP.NET5,MVC 6,Beta 7与VS 2015 RTM的兼容问题

    温馨提示:本文杂而乱,最终不知所云. Visual Studio 2015 RTM已经于2015年7月20号正式发布,我也在第一时间下载安装了起来. 虽然在5月份就开始使用RC版本,但是还是很期待正式 ...

  8. ASP.NET5 MVC6入门教学之一(自己动手)

    等待微软开源大动作已经好几年了,终于ASP.NET 5发布了.今天给新手们写一个简单地教程,教你认识一下ASP.NET5 MVC6 1.安装kvm 首先,你需要以管理员权限打开cmd,执行如下的脚本: ...

  9. ASP.NET5 中静态文件的各种使用方式

    所谓静态文件,包含HTML文件,css文件.图片文件和js文件等,他们是服务器直接读取到客户端的一些资源,在这篇文章中,我们将解释关于ASP.NET5和静态文件的一些内容. 服务端的静态文件 默认情况 ...

随机推荐

  1. MySQL Workbench “Error Code: 1175” 的解决方法

    转自:http://www.linuxidc.com/Linux/2012-04/59333.htm 当用MySQL Workbench进行数据库的批量更新时,执行一个语句会碰到以下错误提示: Err ...

  2. POS管理系统之出入库单分页查询

    JSP: <html>  <head>    <title>My JSP 'inOutKuPage.jsp' starting page</title> ...

  3. 移动web开发实践-css3(1)盒模型display:-webkit-box;的使用

    提到移动布局不得不提到盒模型display:-webkit-box;这个属性,在移动布局中浮动已经不在重要,相反自适应成为主要的需求,所以display:-webkit-box;变得尤为重要. box ...

  4. 13,SFDC 管理员篇 - 移动客户端

    1, 自定义导航 设置导航显示内容 Setup | Mobile Administration | Salesforce Navigation   1, 可以添加和删除在mobile中显示的内容   ...

  5. 通过Robocopy+DOS 命令+Windows排程实现自动备份(将特定文件/目录备份至自动创建的以年月日命名的目标目录)

    1. Software Requirement: 1.1.mirror.bat .mirror_SERVICE_BEGIN.mirror_SERVICE_END.robocopy.exe 1.2. C ...

  6. Ubuntu下使用SVN

      SVN作为日常开发中不可缺少的工具,今天终于开始在Ubuntu下使用了. 1.首先需要安装SVN.Ubuntu下的SVN安装十分简单,sudo apt-get install subversion ...

  7. dedecms后台验证码显示不正常的四种处理办法

    验证码不正确解决方法 分为两类解决方法 第一类:取消掉验证码,直接登录 第二类:修复验证码,回复验证码功能 四种常见的处理办法如下: 第一种:取消掉验证码具体方法如下 实现的方法一共分为两步来进行: ...

  8. phthon

    没什么特别的,我们项目的跨平台代码都是在Windows环境下编码,然后跨平台编译调试,C++和Python代码都是如此.我们用C++实现底层和框架,用ctypes将纯C的API给Python化,然后用 ...

  9. IIS7 IIS8 中多个版本php共存的方法

    原文地址: https://blog.cozof.com/pieces/54.shtml 最近又重回.net,用回IIS.然后用到某个php开源项目,需要低版本的php,之前装的一个php5.5不能用 ...

  10. top命令如何列出所有进程

    今天在工作中遇到一个问题,想通过top命令来查看系统内所有进程,上网找到了办法记录下来. 命令:top -bn1