以下用实例串起dotnet常用命令,带你玩转dotnet命令。

1.创建(dotnet new)

首先我们创建一个项目,这里我们创建控制台程序,命令如下图所示。

dotnet new

dotnet new更多参数参考帮助dotnet new -h。

2.还原(dotnet restore及dotnet pack)

接着再创建一个class lib,也就是类库,命令如下图所示。

dotnet new classlib

创建好以后,编写一些自己的代码然后进行打包。

这里编写了两个方法,现在来打包。

dotnet restore

dotnet pack

.NET Core是怎样添加离线引用包呢?现在揭晓答案。

打包好以后,将applib添加到app的app.csproj中。

在app.csproj 添加如下:

<ItemGroup>

<PackageReference Include="applib" Version="1.0.0" />

</ItemGroup>

添加好以后切换到app目录,然后进行还原。

还原使用的命令是:dotnet restore -s E:\dotnet\applib\bin\Debug\,即dotnet restore -s包的路径。

这样就能直接在项目中调用applib里面的方法了。

在代码中编写对应的调用,然后执行程序。可以看到正确输出了class lib的结果。

3.运行(dotnet build及dotnet run)

以app为例。

dotnet build编译代码,然后dotnet run执行程序:

dotnet app.dll也是执行程序:

4.测试(dotnet test)

这里新建一个文件夹及项目。

新建测试项目:dotnet new xunit。

新建好项目后可以在里面添加测试方法,这里直接运行测试。

dotnet restore

dotnet test

5.发布(dotnet publish)

发布项目使其可以跨平台运行。

dotnet publish默认发布。

发布后定位到publish目录,使用dotnet app.dll执行应用。

下面来跨平台发布。

打开app.csproj 在PropertyGroup节点里加入 <RuntimeIdentifiers>win10-x64;ubuntu.14.04-x64</RuntimeIdentifiers>

首先我们要dotnet restore。还原的时间可能会有些久,需耐心等待一下。

dotnet publish -r win10-x64

这里发布后,可以直接定位到发布publish目录,执行 app.exe 即可。

dotnet publish -r ubuntu.14.04-x64

将publish 文件夹上传至Linux系统,设置App的权限为可执行,然后./app就可以运行了。

dotnet publish –r:指定RuntimeIdentifiers节点里系统ID。

从新建到发布实战dotnet命令,对dotnet命令更加了解。

原文地址:http://www.cnblogs.com/linezero/p/dotnetcli.html

dotnet 命令的更多相关文章

  1. .NET Core dotnet 命令大全

    dotnet 命令大全,让你理解dotnet 命令. 本文将以一个实例串起 dotnet 所有命令,让你玩转dotnet 命令. 本篇文章编写环境为windows 10 ,dotnet 命令同样适用于 ...

  2. 『.NET Core CLI工具文档』(六)dotnet 命令

    说明:本文是个人翻译文章,由于个人水平有限,有不对的地方请大家帮忙更正. 原文:dotnet command 翻译:dotnet 命令 名称 dotnet -- 运行命令行命令的一般驱动程序 概要 d ...

  3. ASP.NET Core开发-MVC 使用dotnet 命令创建Controller和View

    使用dotnet 命令在ASP.NET Core MVC 中创建Controller和View,之前讲解过使用yo 来创建Controller和View. 下面来了解dotnet 命令来创建Contr ...

  4. Core开发-MVC 使用dotnet 命令创建Controller和View

    NET Core开发-MVC 使用dotnet 命令创建Controller和View   使用dotnet 命令在ASP.NET Core MVC 中创建Controller和View,之前讲解过使 ...

  5. Core dotnet 命令大全

    Core dotnet 命令大全 dotnet 命令大全,让你理解dotnet 命令. 本文将以一个实例串起 dotnet 所有命令,让你玩转dotnet 命令. 本篇文章编写环境为windows 1 ...

  6. dotnet 命令实战

    以下用实例串起dotnet所有命令,带你玩转dotnet命令. 1.创建(dotnet new) 首先我们创建一个项目,这里我们创建控制台程序,命令如下图所示. dotnet new dotnet n ...

  7. VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

    一.准备工作 首先安装VisualStudioCode并且可以使用. 1.首先新创建空的MyApps文件夹,作为项目主目录,下面将在这个文件夹中创建多个web应用程序.类型.控制台程序等. 2.打开V ...

  8. 通过dotnet命令行设置asp.net core服务的启动地址

    需求: 通过dotnet命令行启动asp.net core 服务时,自定义监听端口. 方法: 在program.cs中增加命令行参数配置: WebHost.CreateDefaultBuilder(a ...

  9. [转].NET Core dotnet 命令大全

    本文转自:http://www.cnblogs.com/linezero/p/dotnet.html https://docs.microsoft.com/en-us/dotnet/articles/ ...

随机推荐

  1. {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm

    Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...

  2. stm32 硬件错误

    进入该模式,程序死机. 一般来说都是内存错误 1. 数组越界,装入数据溢出, 2. 堆和栈设置不当,这里面硬件的堆和栈在汇编文件中,如果有freertos等,重点检查,任务堆栈使用情况,一般任务堆栈溢 ...

  3. [No0000F9]C# 运算符重载

    您可以重定义或重载 C# 中内置的运算符.因此,程序员也可以使用用户自定义类型的运算符.重载运算符是具有特殊名称的函数,是通过关键字 operator 后跟运算符的符号来定义的.与其他函数一样,重载运 ...

  4. .NET工程师必须掌握的知识点

    Microsoft SQL Server 数据库 一.创建和维护数据库 1.数据库 SQL Server 数据库的组成部分?(参见联机丛书) 如何保证数据库的完整性.安全性.并发性? 数据库设计创建步 ...

  5. 转:eclipse maven build、maven install 等区别

    原文地址:eclipse maven build.maven install 等区别

  6. 内部排序->选择排序->简单选择排序

    文字描述 简单排序的基本思想是:每一趟在n-i+1(i=1,2,…,n)个记录中选取关键字最小的记录作为有序列表中的第i个记录. 示意图 略 算法分析 简单排序算法中,所需进行记录移动的操作次数较少, ...

  7. LeetCode 292 Nim Game 解题报告

    题目要求 You are playing the following Nim Game with your friend: There is a heap of stones on the table ...

  8. 我的grunt学习笔记

    什么是grunt?  Grunt是一个JavaScript任务运行器,用于自动执行频繁任务(如压缩,编译,单元测试)的工具.它使用命令行界面来运行在文件中定义的自定义任务(这个文件称为Gruntfil ...

  9. 内核block机制

    内核版本:linux2.6.22.6 硬件平台:JZ2440 驱动源码 block_ipc_poll_key_int_drv.c : #include <linux/module.h> # ...

  10. python-面向对象-12_模块和包

    模块和包 目标 模块 包 发布模块 01. 模块 1.1 模块的概念 模块是 Python 程序架构的一个核心概念 每一个以扩展名 py 结尾的 Python 源代码文件都是一个 模块 模块名 同样也 ...