• .NET跨平台:在mac命令行下用vim手写ASP.NET 5 MVC程序


    昨天在 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();
            }
        }
    }
  • 相关阅读:
    net5:动态修改内存中的站点地图节点
    手动创建DataTable并绑定gridview
    文件转换成二进制流及二进制流转换成文件
    XML 增、删、改和查的实例【转】
    免费CSS鼠标样式代码大全
    C#连接数据库SQL(2005)
    关于hibernate4.3版本之后org.hibernate.service.ServiceRegistryBuilder被弃用
    史上最全的Maven Pom文件标签详解
    Readme.MD 例子
    GitHub中README.md文件的编辑和使用
  • 原文地址:https://www.cnblogs.com/dudu/p/4595167.html
Copyright © 2020-2023  润新知