.NET Core 实战笔记2-从命令开始

上一篇简要介绍了 .NET Core平台,本篇对dotnet命令进行讲解。

.NET Core作为跨平台产品,不再只依赖于Windows的图形化界面系统,因而推出的dotnet命令 成为了开发 .NET Core应用程序的一个新的跨平台工具链的基础。因此,掌握dotnet命令之后,就可以在任何支持平台上使用同样的命令进行开发管理。

dotnet命令——从实际项目入手

dotnet的命令有很多,没有必要一一列举出来,对于开发人员来说,最好的记忆方式就是实践。

创建(dotnet new)

dotnet new 顾名思义,就是新建一个dotNet Core项目,dotnet core有很多类型的项目,因此,需要同时给new指令添加属性来新建制定模板的项目。如下图,使用dotnet new -h列出了dot net core中的项目模板及其简写。

dotnet-new

我们先来创建一个简单的控制台应用程序,也就是console

new-console

还原(dotnet restore和dotnet pack)

再来创建一个class lib也就是类库,让前面创建的控制台程序来调用这个类库。

dotnet new classlib

new-clb

现在为创建好的CLB的默认类Class1.cs添加两个方法,然后打包。

using System;
namespace app_clb
{
    public class Class1
    {
        public void Printout()
        {
            System.Console.WriteLine("Class Lib Print!");
        }
        public string GetStr()
        {
            return "return lib";
        }
    }  
}

打包需要两条指令:

  • dotnet restore
  • dotnet pack
restore

完成打包后,将applib添加到console_appapp.csproj中。

app.csproj中添加如下内容:

添加后之前切换到console_app目录,执行指令,将CLB包含到项目中。

dotnet restore -s C:\dotnet\app_clb\bin\Debug\

dotnet restore -s + 包的路径

restoreb

然后就能直接在项目中调用app_clb中的的方法。

using System;
using app_clb;
namespace console_app1
{
    class Program
    {
        static void Main(string[] args)
        {
            Class1 obj =new Class1();
            obj.Printout();
            System.Console.WriteLine(obj.GetStr());
            System.Console.WriteLine("Hello World!");
        }
    }
}

运行(dotnet build和dotnet run)

dotnet build 即编译当前目录下的代码文件为可执行程序

build

dotnet run则是允许已经编译好的可执行程序

run

同时,dotnet app.dll也是执行程序。

测试(dotnet test)

新建一个文件夹及项目

dotnet new xunit

新建好后直接添加测试方法,运行测试,这里直接运行测试

dotnet restore

dotnet test

test

发布(dotnet publish)

dotnet core是跨平台的开发平台,所以发布的软件当然是具有跨平台运行的能力的。

先添加节点,打开console_app1.csprojPropertyGroup节点中加入:

<RuntimeIdentifiers>win10-x64;ubuntu.14.04-x64</RuntimeIdentifiers>

还原项目dotnet restore,然后发布

dotnet publish默认发布

dotnet publish -r win10-x64 发布配置信息中添加好的win10-x64

dotnet publish -r ubuntu.14.01-x64 发布配置信息中添加好的ubuntu

publish

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Hadoop实操

聊聊个人对安装部署CDH集群前置准备的理解

这一步可以参考我之前写的文章《如何在HP dl380 Gen9服务器上安装Redhat 7.2并配置软RAID》、《如何为Hadoop集群服务器绑定双万兆网卡》

1034
来自专栏Ribbon

在vSphere中为不同服务器配置IPMI功能

在本示例中,一台DELL R730 XD服务器安装了ESXi 6.0,ESXi 的IP地址是192.168.100.11,这台DELL服务器iDRAC控制台的I...

171
来自专栏沈唁志

在PhpStorm中安装使用PHP_CodeSniffer编码规范检查工具

入职两天了,继续研究Swoole的框架,新公司有内部wiki,对于一些代码规范还是很重视的

341
来自专栏24K纯开源

给你的博客加上“Fork me on Github”彩带

起         如今,随着Git的大热以及Github的优越性,许多知名开源项目都将源代码托管到Github上了。在Github上不仅可以托管自己的开源项目...

18410
来自专栏上善若水

s001android逆向安全初级篇之apk逆向常用工具及简单使用一览

关于apk 逆向中的一些工具的使用,看了不少文章,也使用过有很长一段时间了,今天对此做一总结:

793
来自专栏漫漫全栈路

.NET Core 实战笔记2-从命令开始

上一篇简要介绍了 .NET Core平台,本篇对dotnet命令进行讲解。 .NET Core作为跨平台产品,不再只依赖于Windows的图形化界面系统,因而...

35211
来自专栏Crossin的编程教室

喏,你们要的 PyCharm 快速上手指南

0、前言 Pycharm 作为一款针对 Python 的编辑器,配置简单、功能强大、使用起来省时省心,对初学者友好,这也是为什么编程教室一直推荐新手使用 Pyc...

2674
来自专栏SpiritLing

Chrome游览器使用时,修改文件和网页刷新后,不能显示效果

一:因为游览器缓存问题 有时候在写完代码后,刷新游览器,发现自己写的目标是让某一个东西隐藏,但是结果是依旧显示着,打开调试工具在Sources中发现,文件依旧是...

2955
来自专栏Hadoop实操

如何在Kerberos环境下使用Flume采集Kafka数据写入HBase

1082
来自专栏前端真相

webpack、npm 错误汇总

原因: 版本10 fs.promises的API是实验性的,webstorm不允许使用。

2646

扫码关注云+社区