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. Linux下设置SSH端口

    SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立在应用层基础上的安全协议.SSH 是目前较可靠,专为远程登录会话 ...

  2. sql server中的分页数据查询

    1.引言 今天在工作中遇到一个需要进行sql server分页数据查询的问题,但是分页数据查询的sql却忘记了,最终通过查询资料解决了该问题.现在把解决方法记下,以备查阅. 在这里需要感谢博客园的Ql ...

  3. Virtualbox虚拟机安装与设置

    Virtualbox与VMware类似,都是虚拟机软件,在win10下安装Virtualbox直接默认安装即可.版本:VirtualBox-5.2.0-118431-Win.exe 安装完成后,点击左 ...

  4. Python Tornado篇

    Tornado既是一个web server,也是web framework.而它作为web server 采用的是asynchronous IO的网络模型,这是一种很高效的模型. Tornado 和现 ...

  5. 安装配置Oracle 12c RAC

    http://www.lab128.com/rac12_installation_using_vb/article_text.html

  6. 简单的vuex 的使用

    1. npm install vuex 2. 在src 下 新建文件夹 store (为什么是这个单词,vuex 是用来状态管理的,用储存一些组件的状态,取存贮之意),store 文件下 新建文件 i ...

  7. 从Unity中的Attribute到AOP(三)

    上一篇我们对系统的Attributes进行了MSIL代码的查看,了解到了其本质就是一个类的构造函数.本章我们将编写自己的Attributes. 首先我们定义书的属性代码,如下: [AttributeU ...

  8. SharePoint客户端js对象模型

    'use strict'; var context = SP.ClientContext.get_current(); var user = context.get_web().get_current ...

  9. 设计模式复习小结一(Strategy Pattern/Observer Pattern/Decorator Patter/Factory Pattern)

    目录: 前言 1. Stratrgy Pattern 2. Observer Pattern 3. Decorator Pattern 4. Factory Pattern 4.1 FactoryPa ...

  10. java保留两位小数(不四舍五入)

    import java.text.DecimalFormat; import java.math.RoundingMode; class Text{ public static void main(S ...