.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中的项目模板及其简写。

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

还原(dotnet restore和dotnet pack)

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

dotnet new classlib

现在为创建好的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

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

app.csproj中添加如下内容:

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

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

dotnet restore -s + 包的路径

然后就能直接在项目中调用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 即编译当前目录下的代码文件为可执行程序

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

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

测试(dotnet test)

新建一个文件夹及项目

dotnet new xunit

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

dotnet restore

dotnet 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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏电光石火

Windows 2008 R2上配置IIS7的php

下载本页所需软件:download.zip 在浏览IIS官方网站(http://www.iis.net )发现一个很好的工具 PHP Manager f...

2689
来自专栏宝哥的专栏

Docker系列学习文章 - 如何安装Docker(三)

| 导语 前面介绍了关于容器和docker的知识,那么从这篇文章开始,正式进入实操,带大家手把手安装docker环境。

1.3K20
来自专栏编程坑太多

『高级篇』docker之安全认证kubernetes命令熟悉(40)

PS:基本就是测试下安全认证的k8s是否可以正常的使用,也使用了几个命令,其实我感觉,kubernetes 跟docker的命令很类似,环境搭建是大头,环境能搭...

1203
来自专栏Samego开发资源

JDK的安装与配置 | Linux&Windows

1913
来自专栏Java 源码分析

关于apache端口被占用

正文 无论我们在安装单个的apache还是装集成环境xampp都是有可能遇到apache意外停止。查看错误日志会发现一般都是端口被占用,一般是被虚拟机占用了,这...

3697
来自专栏跟着阿笨一起玩NET

异常:System.BadImageFormatException,未能加载正确的程序集XXX或其某一依赖项

常:System.BadImageFormatException,未能加载正确的程序集XXX或其某一依赖项

3442
来自专栏MixLab科技+设计实验室

NodeJS全栈之服务器部署笔记

这篇是继续Nodejs全栈的文章,往期可以点击查阅: Nodejs全栈之开启https协议 Nodejs全栈之nginx配置文件 我选的操作系统是centos...

4217
来自专栏Ryan Miao

Nginx代理proxy pass配置去除前缀

比如,访问abc.com/appv2/a/b.html, 要求转发到localhost:8088/appv2/a/b.html

1102
来自专栏赵俊的Java专栏

使用 Docker 快速安装 HTML5-Based Speedtest,可以准确的测试本地到 VPS 的网络速度

1.3K5
来自专栏漫漫全栈路

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

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

2421

扫码关注云+社区