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脚本

 

ASPNET 5 和 dnx commands的更多相关文章

  1. .NET跨平台:在Mac上跟着错误信息一步一步手写ASP.NET 5程序

    今天坐高铁时尝试了一种学习ASP.NET 5的笨方法,从空文件夹开始,根据运行dnx . kestrel命令的错误信息,一步一步写代码,直至将一个最简单的ASP.NET程序运行起来. 尝试的具体步骤如 ...

  2. EntityFramework 7 Migrations 迁移命令

    示例代码: using Microsoft.Data.Entity; using System.Collections.Generic; namespace ClassLibrary1 { publi ...

  3. OWIN 中 K Commands(OwinHost.exe)与 Microsoft.AspNet.Hosting 的角色问题

    问题详情:K Commands(OwinHost.exe)是不是 OWIN 中的 Host 角色?如果是,那 Microsoft.AspNet.Hosting 对应的是 OWIN 中的哪个角色? OW ...

  4. Encountered an unexpected error when attempting to resolve tag helper directive '@addTagHelper' with value '"*, Microsoft.AspNet.Mvc.TagHelpers"'

    project.json 配置: { "version": "1.0.0-*", "compilationOptions": { " ...

  5. DNX概述

    1. 什么是.NET执行环境 ? .NET Execution Environment(DNX) 是一个SDK 和运行时环境,它包含所有的你需要创建和运行.net应用程序的组件.它提供一个主机进程,C ...

  6. 【Net Core】DNX概述

    1. 什么是.NET执行环境 ? .NET Execution Environment(DNX) 是一个SDK 和运行时环境,它包含所有的你需要创建和运行.net应用程序的组件.它提供一个主机进程,C ...

  7. 理解ASP.NET 5运行时命令:DNVM, DNX, 和DNU

    ASP.NET 5 引入了一个新型的运行时,让我们可以现场交付模式组合式构建应用程序,而不依赖于宿主机上的.NET框架.这种新模式为我们提供了命令行工具(DNVM.DNX.DNU)用于管理我们的.ne ...

  8. DNX 概览

    来源https://docs.asp.net/en/latest/dnx/overview.html .NET Execution Environment是什么 .NET Execution Envi ...

  9. 最新Linux部署.NET,Mono and DNX

    这几天一直在折腾在Linux下的ASP.NET 5,就下在看来在其它操作系统中ASP.NET 5或.NET应用,要想在完整的MS VM(CoreCLR)上运行还不远远达不到,应用的效果. 目前只能在M ...

随机推荐

  1. SpringMVC RequestMapping注解

    1.@RequestMapping 除了修饰方法,还可以修饰类 2.类定义处:提供初步的请求映射信息.相对于WEB应用的根目录  方法处:提供进一步细分映射信息  相对于类定义处的URL.若类定义处未 ...

  2. python基础(四)字符串处理

    字符串处理 msg = 'my name is sylar' capitalize方法,将字符串的首字母大写 print 'capitalize方法:', msg.capitalize() swapc ...

  3. 第十三章:Python の 网络编程进阶(二)

    本課主題 SQLAlchemy - Core SQLAlchemy - ORM Paramiko 介紹和操作 上下文操作应用 初探堡垒机 SQLAlchemy - Core 连接 URL 通过 cre ...

  4. python之tuple

    1.python元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. #创建元组 >>> tuple2 = 123,456,'hel ...

  5. PHP正在进行时-变量

    在PHP中,变量是$+变量名,变量名遵循标识符的命名规则,可以以字母.下划线开头,可以由数字.下划线.字母组成合法的变量名. 变量声明 所有变量在使用之前应该进行声明,而且最好带上注释,虽然在PHP中 ...

  6. Python源码剖析之准备工作

    一个Python程序开发者, 也是C语言爱好者, 为了加强自己对Python语言实现的理解, 最近选择阅读下陈儒老师的书, 对Python3.5.1源码进行阅读, 再次记录下读书笔记.  一.Pyth ...

  7. Android 屏幕刷新机制

    这次就来梳理一下 Android 的屏幕刷新机制,把我这段时间因为研究动画而梳理出来的一些关于屏幕刷新方面的知识点分享出来,能力有限,有错的地方还望指点一下.另外,内容有点多,毕竟要讲清楚不容易,所以 ...

  8. POJ 2370 Democracy in danger(简单贪心)

    Democracy in danger Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3388   Accepted: 25 ...

  9. bzoj:1654 [Usaco2006 Jan]The Cow Prom 奶牛舞会

    Description The N (2 <= N <= 10,000) cows are so excited: it's prom night! They are dressed in ...

  10. C/C++中substr函数的应用(简单讲解)

    substr(字符串,截取开始位置,截取长度) //返回截取的字 substr('Hello World',0,1) //返回结果为 'H'  *从字符串第一个字符开始截取长度为1的字符串 subst ...