.NET跨平台之旅:借助ASP.NET 5 Beta5的新特性显示CLR与操作系统信息

今天在 MSDN 博客上看到了 ASP.NET 5 Beta5 的发布消息(详见 ASP.NET 5 Beta5 Now Available),从中知道了 2 个新特性:

1. DNX: New IRuntimeEnvironment service. Use the new IRuntimeEnvironment service to get runtime details, like OS, CLR, and bitness.

2. MVC: C# 6 support in Razor.

正好借助我们 .NET 跨平台之旅的首站 —— 基于 CoreCLR 运行于 Linux 上的站点 about.cnblogs.com  体验一下。

我们要实现的功能是在页脚显示“Powered by {CLR名称} {操作系统名称}”,CLR 名称与操作系统名称通过 IRuntimeEnvironment 接口获取,显示字符串时使用 C# 6.0 的 string interpolation 特性。

借助 ASP.NET 5 从头注到脚的全身心依赖注入(dependecy injection)特性,我们只需在视图添加 2 行代码。

用 vim 打开 _Layout.cshtml 视图文件:

vi Views/Shared/_Layout.cshtml

在开头添加 IRuntimeEnvironment 接口的解析代码:

@inject Microsoft.Framework.Runtime.IRuntimeEnvironment env

在页脚添加调用 IRuntimeEnvironment 接口以及在视图中显示字符串的代码:

Powered by @($"{env.RuntimeType} on {env.OperatingSystem}")

运行站点:

dnx . kestrel

浏览器查看运行结果:

运行成功!

借助 ASP.NET 5 Beta5 的发布,.NET 跨平台之旅今天进行了一次徒步 100 米的旅程。虽然路程很短,但细微之处也可以感受到 .NET 跨平台的千里之行正在一步一步向前。

posted @   博客园团队  阅读(2504)  评论(8编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· autohue.js:让你的图片和背景融为一体,绝了!
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
历史上的今天:
2014-07-01 云计算之路-阿里云上:排查奇怪的404错误
2013-07-01 上周热点回顾(6.24-6.30)
2008-07-01 博客园电子月刊第三期出炉
点击右上角即可分享
微信分享提示