2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

ASP.NET Core 2 加入了 Razor 页面特性

  • 2017-08-30
  • 本文字数:947 字

    阅读完需:约 3 分钟

最近发布的 ASP.NET Core 2.0,连同新发布的.NET Core 2 Entity Framework Core 2.0 y,一并构成了.NET Core 2.0 生态中的三元组。此发布给出了多个新特性和改进,其中包括通用性能的改进、Razor 页面、新的开发模板以及更好的 Azure Diagnostics 支持。

让我们首先看一下 Razor 页面。Razor 页面类似于标准的 MVC 视图,只是通过使用 @Page 指令标明自身为 Razor 页面。Microsoft 现在考虑将 Razor 页面作为 ASP.NET Core 中构建 Web 应用 UI 的推荐方法,当然开发人员也可自由地选择最适合自己的方法。使用 Razor 页面编写的 Web 页面,无需经过控制器即可直接处理请求,正如在标准的 ASP.NET MVC 应用中那样。

转向 ASP.NET Core 2 平台的另一个好处是简化了对软件包的引用。在项目的.csproj文件中,仅需引用Microsoft.AspNetCore.All。这是一个 Meta-package ,它在简化了引用问题的同时,确保应用所需的所有库是可用的。而在发布 Web 应用时,只有应用所需的库才会与应用一并发布,避免了文件膨胀。另一个优点是 Meta-package 可使应用的启动速度更快,这是因为它使用了.NET Core Runtime Store,其中预编译了所有的软件包和文件。虽然这一 Meta-package 提供了一种便利的软件包引用方式,但是开发人员依然可以继续在Microsoft.AspNetCore.*中直接引用特定的软件包。

为了支持新的特性,ASP.NET Core 2 扩充一些模板,它们来自于 Razore 页面(模板命名为“Web Application”)、Web API、基于 MVC 的 Web 应用、Angular、React.js 和 React.js& Redux 等。所有这些模板也可以通过命令行使用,不必依赖于 Visual Studio 2017。

在明确声明的情况下,Razor 语言引擎提供对 C# 7.1 特性的支持。为此,需在项目文件中需添加该如下属性:<LangVersion>latest</LangVersion>。更改将在重新加载解决方案后生效。

规划将应用部署到 Azure 的开发人员将会看到,ASP.NET Core 2 构建的应用不需作任何更改,就可使用 Azure App Service。应用的部署可以在 VS2017 中执行,也可直接在 Azure 门户上执行。

使用已有 ASP.NET Core 1.X 软件包的开发人员,要详细了解如何升级应用到 ASP.NET Core 2.0,可以参考 Microsoft 的升级指南。使用ASP.NET 2.0 需下载.NET Core 2 SDK,它是独立于VS2017 提供的。

查看英文原文: ASP.NET Core 2 Gains Razor Pages

2017-08-30 19:002596
用户头像

发布了 391 篇内容, 共 156.4 次阅读, 收获喜欢 257 次。

关注

评论

发布
暂无评论
发现更多内容

青藤:一招制敌!微隔离,让勒索软件不再横行

青藤云安全

拆分电商系统为微服务

Beyond Ryan

数字人民币对人民币国际化的长远影响

CECBC

中国制造的“天工开物”新篇,如何在云上进化?

脑极体

盘点JavaScript哪些常用的数组对象

你好bk

JavaScript 大前端 数组 html/css 12月日更

震惊!大势已来!!区块链的真正价值是什么?

CECBC

你看到什么是因为要你看到什么

mtfelix

28天写作

区块链等技术将为中欧跨境电商带来革新以及助力城市产业转型升级

CECBC

分布式理论之CAP理论

卢卡多多

CAP理论 12月日更

团建的目的是什么?(7/28)

赵新龙

28天写作

MySQL探秘(七):InnoDB行锁算法

程序员历小冰

MySQL 28天写作 12月日更

低代码实现探索(五)前端组件图形化脚本

零道云-混合式低代码平台

1-1聚合架构第二讲:企业架构的认知历程

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构 业务架构

1-3聚合架构第四讲:工程方法的进步也不容易

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构 业务架构

定时删除指定目录的过期文件(linux)

liuzhen007

28天写作 12月日更

谈谈创业感想

wood

创业 28天写作

普普通通的Route

Time-sun

flutter

1-6聚合架构第七讲:聊聊togaf的发展历程

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构

安全第二话

张老蔫

28天写作

1-2聚合架构第三讲:从包饺子看工程与架构

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构 业务架构

通过阅读 SpringCloud 源码 来 理解接口和抽象的区别

悟空聊架构

接口 抽象 28天写作 悟空聊架构 12月日更

1-4聚合架构第五讲:架构方法的进步也不容易

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构 业务架构

架构实战营模块一作业

novoer

「架构实战营」

架构实战营:模块一作业

Geek_93ffb0

「架构实战营」

聚合架构第一讲:开篇啦

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构 业务架构

1-5聚合架构第六讲:聊聊开山祖Zachman框架

钰湚—付晓岩

企业架构 软件工程 数字化转型 软件架构 业务架构

数据产品实战-业务洞察

第519区

数据分析 产品经理 数据产品经理 指标体系 数据洞察

🏆【Alibaba中间件技术系列】「Sentinel技术专题」分布式系统的流量防卫兵的基本介绍(入门源码介绍)

码界西柚

Sentine SpringCloud Alibaba Alibaba技术 限流熔断 12月日更

代码出现异常时,我应该怎么处理?

JavaEdge

签约计划第二季

低代码实现探索(三)后台模型执行设计

零道云-混合式低代码平台

低代码实现探索(四)前端组件核心模型

零道云-混合式低代码平台

ASP.NET Core 2加入了Razor页面特性_.NET_Jeff Martin_InfoQ精选文章