.NET Core 1.0.0 RC2
2016-05-16 07:31
267 查看
.NET Core 1.0.0 RC2
[/code]
[/code]
[/code]
[/code]
[/code]
[/code]
[/code]
[/code]
[/code]
[/code]
RC2提供了一个非常强大的命令行(dotnet),包括恢复NuGet包以及编译执行.NET应用的相关操作都可以通过它来完成
[code]
[/code]
[/code]
定义Project.json
定义在Project.json文件中的所有配置如下所示,我们会发现它与RC1中的Project.json不太一样。RC2中,我们可以向定义普通依赖一样来选择运行时(Microsoft.NETCore.App),或者说运行时本质已经成为了一个一般意义上的以来。除了这个针对运行时的依赖,我们还添加了两个依赖,它们分别是“Microsoft.AspNetCore.Mvc”和“Microsoft.AspNetCore.Server.Kestrel”,前者定义了ASP.NET Core MVC的核心框架,后者则提供了一个针对Kestrel的Server (ASP.NET Core管道中的Server专门负责请求的监听、接收和回复)。我们在“framework”节点添加了一个名为“netcoreapp1.0”的框架,之前的名称叫做“dnxcore50”。[code][code]
[/code]
[/code]
定义入口程序
启动应用的入口程序定义在Program.cs。如下面的代码片段所示,我们在这个文件中定义了一个Program类型,并在Main方法中编写了启动MVC应用的代码。具体来说,我们创建了一个WebHostBuilder对象通过调用扩展方法UseKestrel为构建的HTTP消息处理管道注册了一个Kestrel服务器。在调用UseStartup方法将Startup设置为启动类型之后,我们调用Build方法创建了一个WebHost对象。我们最终调用Run方法启动WebHost,进而启动了我们的MVC应用。[code][code]
[/code]
[/code]
定义初始化类型
ASP.NET Core应用启动的时候会先执行一段初始化操作来构建一个完整的HTTP消息处理管道,这些初始化操作定义在Startup.cs。上面调用WebHostBuilder的UseStartup方法指定的类型Startup就定义在这个文件中。如下面的代码片段所示,我们在ConfigureServices方法中注册了与MVC相关的服务,并利用Configure方法将实现MVC框架的中间件注册到消息处理管道中。[code][code]
[/code]
[/code]
定义Controller
我们在HomeController中定义了MVC应用中唯一的一个Controller,并按照如下的形式定义了一个唯一的Action方法。这个Action方法返回一个简单的字符串“Hello World”,并映射为应用的根地址(“/”)[code][code]
[/code]
[/code]
步骤三、运行程序
RC2提供了一个非常强大的命令行(dotnet),包括恢复NuGet包以及编译执行.NET应用的相关操作都可以通过它来完成恢复NuGet包
我们打开命令行工具并切换到应用所在的目录,执行dotnet restore命令恢复在project.json中使用的NuGet包。编译执行程序
我们直接执行dotnet build命令对整个应用实施编译,然后执行dotnet run命令启动我们的MVC应用。向HomeController发起请求
当程序启动后,Kestrel服务器会利用5000端口对HTTP请求实施监听。由于定义在HomeController的Action方法Index被映射为应用根地址,所以我们利用浏览器向该地址发送请求会得到这个Action方法的响应结果。相关文章推荐
- View的工作原理之MeasureSpec测量规格
- 水题
- ListIterator接口
- 26.[Leetcode]Remove Duplicates from Sorted Array
- MVC设计模式
- 电商系统的高并发设计和挑战
- P1309 瑞士轮 来源洛谷 归并排序
- NET Core 1.0
- hive的三种启动模式
- 自由软件与软件版权
- WinRarHelper帮助类
- 利用记事本创建一个ASP.NET Core RC2 MVC应用
- 发布在即!.NET Core 1.0 RC2已准备就绪
- 构建高性能.NET应用之配置高可用IIS服务器-第一篇:IIS必须掌握的知识
- spring+mybatis+Atomikos JTA事务配置说明
- juce Justification 分析
- poj 1521 Entropy 并查集+优先队列实现哈夫曼编码
- spring+mybatis+Atomikos JTA事务配置说明
- LeetCode 18. 4Sum
- Java实现HTML代码生成PDF文档