昨天在 Mac 上手写了一个最简单的 ASP.NET 5 程序,直接在 Startup.cs 中通过 Response.WriteAsync() 输出响应内容,详见 .NET跨平台:在Mac上跟着错误信息一步一步手写ASP.NET 5程序

今天接着昨天的代码,用 vim 一步一步手写一个最简单的 ASP.NET 5 MVC 程序。

先创建 Controllers 文件夹:

mkdir Controllers && cd $_

接着创建 HomeController.cs 文件:

vi HomeController.cs 

在 vim 中输入下面的代码并只在退出:

using Microsoft.AspNet.Mvc;

namespace HelloCnblogs
{
public class HomeController : Controller
{
public IActionResult Index()
{
return Content("Hello, Cnblogs! -- ASP.NET 5 MVC");
}
}
}

然后用 vim 打开 Startup.cs 文件添加 MVC 相关代码:

using Microsoft.AspNet.Builder;
using Microsoft.Framework.DependencyInjection; namespace HelloCnblogs
{
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseMvcWithDefaultRoute();
} public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
}
}

再然后就是用 vim 在 project.json 中添加 MVC 的引用

"dependencies":{
"Kestrel": "1.0.0-*",
"Microsoft.AspNet.Mvc": "6.0.0-*"
}

接下来,就开始运行这个最简单的 ASP.NET 5 MVC 程序。

先安装所引用的包包:

dnu restore

然后运行程序:

dnx . kestrel

运行成功!

Started

用浏览器访问 http://localhost:8080/ ,得到的响应内容如下:

Hello, Cnblogs! -- ASP.NET 5 MVC

搞定!

通过这次手写代码 ASP.NET 5 MVC 代码,得到运行一个简单 ASP.NET 5 MVC 程序的最小配置:

除了 Controller 之外,project.json 中的配置如下:

{
"commands":{
"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:8080"
},
"dependencies":{
"Kestrel": "1.0.0-*",
"Microsoft.AspNet.Mvc": "6.0.0-*"
},
"frameworks":{
"dnxcore50": {}
}
}

Startup.cs 中的代码如下:

using Microsoft.AspNet.Builder;
using Microsoft.Framework.DependencyInjection; namespace HelloCnblogs
{
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseMvcWithDefaultRoute();
} public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
}
}

.NET跨平台:在mac命令行下用vim手写ASP.NET 5 MVC程序的更多相关文章

  1. Linux命令行下的vim文本编辑器

    Linux命令行下的vim文本编辑器 下面这个网站的地址讲解的非成分清楚!!!! http://blog.csdn.net/niushuai666/article/details/7275406 学习 ...

  2. mac 命令行下 vim 的使用

    vi/vim 使用实例 使用 vi 来建立名为 test.txt 的文件 vi test.txt1按下 ESC 按钮回到一般模式 在一般模式中按下 :wq 储存后离开 vi 基本上 vi/vim 共分 ...

  3. mac 命令行下连接到MySQL mysql: command not found

    mac下刚刚安装完MySQL后使用命令连接到MySQL mysql -uroot -p 提示:  -bash: mysql: command not found使用  /usr/local/mysql ...

  4. 命令行下Git的使用

    命令行下Git的使用 写在前边的话 以自己即将进行的毕设项目为例,进行Git使用的简易说明.不过由于校园网络的限制,故使用GitOSC. 快速开始 本次git使用位于自己的个人PC上,所以将个人的Gi ...

  5. 【Python】iichats —— 命令行下的局域网聊天程序

    转载请声明出处:http://www.cnblogs.com/kevince/p/3941728.html   ——By Kevince ii系列工具第三弹,命令行下的局域网聊天程序 原理: 程序启动 ...

  6. Linux 命令行下搜索工具大盘点,效率提高不止一倍!

    在 Linux 命令行下进行文本关键字的搜索,大家肯定第一时间会想到 grep 命令.grep 命令确实十分强大,但如果需要用到它更加灵活的功能时,可能命令就会显得十分复杂. 于是,为了简化 grep ...

  7. 转:开启命令行下的社交-webqq脚本

    最近一直在命令行下工作,除了 Google Chrome,几乎很少接触 GUI 相关的软件.前段时间把手机上的 QQ 给卸载了,希望可以把时间凝聚在更加有价值的位置,今天突然又想起了这个软件,突发奇想 ...

  8. mac命令行配置网络

    mac命令行配置网络今天终于找到了Mac OS X通过命令行修改ip的方式了,记录如下: 修改mac地址,重启后失效sudo ifconfig en0 lladdr d0:67:e5:2e:07:f1 ...

  9. MAC - 命令行中用sublime打开指定文件,使用ln命令建立软链接

    眼下sublime是mac下最好的文本编辑软件.常常要使用它打开一些文件,比如html,js,txt,json等文件,可是sublime2默认不支持在命令行下调用.经过研究发现能够用建立软连接的方式调 ...

随机推荐

  1. TCheckListBox

    TCheckListBox.CheckListBox http://www.cnblogs.com/mingdep/archive/2012/03/20/2408282.html 全部打勾 for ( ...

  2. js编码

    var url = encodeURI(encodeURI("search-keyword-"+keyword+".html")); 后台uri = Strin ...

  3. JavaScript 基础(七) 箭头函数 generator Date JSON

    ES6 标准新增了一种新的函数: Arrow Function(箭头函数). x => x *x 上面的箭头相当于: function (x){ return x*x; } 箭头函数相当于匿名函 ...

  4. ios category,protocol理解

    category: 向现有的类中增加方法,同时提供方法的实现,现有类不需要做任何改动. protocol:(相当于Java或C#中的接口interface,当很多类都要需要类似的方法,但是方法具体实现 ...

  5. Prefab强制使用文本模式

    [Prefab强制使用文本模式] Edit -> ProjectSetting -> Editor:

  6. centos7 ip地址设置

    centos7 ip地址设置 http://simonhu.blog.51cto.com/196416/1588971 CentOS系统 修改DNS 修改对应网卡的DNS的配置文件 # vi /etc ...

  7. SQLServer2008R2 mdf文件还原数据库

    偶然遇到要用mdf文件restore数据库,试了2个小时才弄出来,百度查出来的我试了都不太好用,或者是我没理解. 下面把我用的记录一下,以防忘记. 工具:SQLServer 2008R2 步骤: 1. ...

  8. python第十二天-----RabbitMQ

    有一位小伙伴说让我去A站写博客可能会有很多人喜欢,真是搞不懂,北方哪里有卖萌?北方默认状态就是这么萌的!再者说了,这明明就是很专注于技术的博客嘛,能不能严肃点!知不知道什么叫帧? 学习到了数据库的相关 ...

  9. 项目Windows服务安装命令:

    sc create YY.SmsPlatform.RemoteDataCenter binPath= "E:\YY.SmsPlatform\YY.SmsPlatform.RemoteData ...

  10. iOS 地图

      MapKit框架使用前提 导入框架 导入主头文件 #import <MapKit/MapKit.h> MapKit框架使用须知 MapKit框架中所有数据类型的前缀都是MK MapKi ...