zoukankan      html  css  js  c++  java
  • ASPNET 5 和 dnx commands

      DNX项目是用来创建和运行.net应用程序适用于windows,mac 和linux 的,dnx提供了一个宿主进程(a host process),CLR托管逻辑( CLR hosting logic)和管理切入点发现(managed entry point discovery),你可以使用DNX在命令提示符执行一些命令.

      新建一个ASP.NET5 Web Application后,可以在项目的project.json中找到Comands节点,默认有两个,一个是web和ef.
        
     

    1.DNX WEB

     当你在命令提示符执行dnx web时,你就可以打开这个web 应用程序了,可以在下图它的运行环境是:Developmetn, 监听的是5004端口。
      

    下面来深入了解一下当我们执行dnx web 里, dnx 都执行了什么操作。

    当你输入dnx web时,dnx 会去查找这个目录下的project.json下的commands 节点下的web命令,Microsoft.AspNet.Server.Kestrel 是dnx第一个去执行的程序集名称。

    一个dnx 命令可以包含一组传递给dnx的参数,你可以把上面的web 命令改成

      "web": "Microsoft.AspNet.Server.Kestrel --config hosting.ini",
     

    1.1 命令的第一部分是一个程序集名称,dnx 会去执行这个程序集,在这个程序集中有一个入口函数,它的代码它会去调用Microsoft.AspNet.Hosting程序集下的入口函数,并把参数传给它。后面的执行都会在Microsoft.AspNet.Hosting程序集下

      

    1.2 命令的第二部分config hosting.ini 是web 应用程序执行的配置信息。

    {
      "Hosting:Environment": "Development", //执行环境(Development,Staging,Production),默认是Production
      "kestrel.noDelay": "", //是否延迟发送数据
      "kestrel.threadCount": "16", //线程处理数量
      "server.urls": "http://*:5001", //监听的url地址
      "WebRootPath": "wwwroot" //WebRoot的路径"
    }
    
    

    2.DNX EF

       在命令行中执行dnx ef

    你可以查看迁移的子命令的帮助来获取更多详细信息,输入dnx ef migrations --help

    查看迁移命令的add命令, 输入dnx ef migrations add --help

    新增一个迁移命令:dnx ef migrations add MyMigration.

    下面是目前命令的完整列表

    • database

      • update–从一个特定的迁移记录中来更新数据库
    • dbcontext

      • list–列出你的DbContext 的类型
      • scaffold–一个DbContext和实体类型指定数据库
    • migrations

      • add–新增一个迁移全集

      • list–列出全部的迁移记录

      • remove–移除最新的迁移记录

      • script–从迁移记录中生成sql脚本

     
  • 相关阅读:
    析构函数中的virtual是否必要?
    程序员必看的书
    UML类图几种关系的总结
    VS 2008的64位编译环境的安装和使用
    VB获取CAD属性值
    30分钟LINQ教程
    ADO.NET
    C#编写Windows服务程序图文教程
    Json的序列化与反序列化以及乱入的k_BackingField
    C#中的委托(Delegate)和事件(Event)
  • 原文地址:https://www.cnblogs.com/dillon/p/asp-net-5-dnx-command.html
Copyright © 2011-2022 走看看