前言

本篇文章主要还是介绍使用 VS Code 进行.Net Core开发和常用 CLI命令的使用,至于为啥要用VS Code ,因为它是真的是好看又好用 :) ,哈哈,主要还是为了跨平台开发做准备。

开发环境

  • window 10
  • 安装 .NET Core 和 VS Code
  • C# for Visual Studio Code (powered by OmniSharp)
  • vscode-nuget-package-manager

常用命令

  • dotnet new 新建项目(解决方案,类库,单元测试等)
  • dotnet build 生成编译当前项目
  • dotnet run 运行当前项目
  • dotnet sln add 将新建项目添加到解决方案
  • dotnet add reference 为项目添加引用
  • dotnet test 执行测试

详细说明可参考微软官方说明:CLI命令

具体操作如下:

  1. 首先我们创建一个名称为 XunitDemo 的文件夹并使用VSCode打开。

  2. 创建解决方案文件,打开 “集成终端” ,默认路径即当前文件的目录,输入 dotnet new sln 并回车,如下图所示生成了一个和文件夹同名的sln文件

  3. 新建一个类库项目,在当前集成终端中,输入 dotnet new classlib -o Demo.Main,-o 指定输出的路径,如下图所示,会创建一个Demo.Main的文件夹和一个.csproj文件

  4. 接下来我们创建一个service.cs类文件,并包含一个简单的方法方便测试,如下图所示:



    cd Demo.Main 切换到Demo.Main项目路径下,执行 dotnet build 单独build新建的Demo.Main类库,



    而生成的路径则是在 “Demo.Main\bin\Debug\netstandard2.0” 中,因为默认目标框架使用的是.net standard2.0,如果是.nerframework则会生成不同的文件夹。

    当然,我们也可以把多个项目添加到XunitDemo解决方案下,最后build解决方案即可。

  5. 创建单元测试项目,如下图所示,集成终端中输入: dotnet new test -o Demo.Test



    cd .. 是返回上级目录,因为上面我们将路径切换到了Demo.Main文件夹下了。

  6. 添加项目到解决方案中dotnet sln add Demo.Test\Demo.Test.csproj Demo.Main\Demo.Main.csproj

    添加项目引用关系,dotnet add Demo.Test\Demo.Test.csproj reference Demo.Main\Demo.Main.csproj

7.编写简单的测试方法并执行测试,dotnet test,具体如下:

结语

本文简单的介绍了使用VS Code进行.net core开发并使用单元测试的简单流程,纯手工打造。一方面找找写文章的感觉,年后第一篇文章,计划每月至少写三篇博客;

另一方便,为后续的.net core文章做一个铺垫。

轻松掌握VS Code开发.Net Core及创建Xunit单元测试的更多相关文章

  1. 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台

    使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NET Core.都只是在windows下运行. .NET Core真正的核心是跨平 ...

  2. 部署到Linux使用VS Code 开发.NET Core 应用程序

    使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NE ...

  3. 【实验手册】使用Visual Studio Code 开发.NET Core应用程序

    .NET Core with Visual Studio Code 目录 概述... 2 先决条件... 2 练习1: 安装和配置.NET Core以及Visual Studio Code 扩展... ...

  4. 使用Visual Studio Code开发.NET Core看这篇就够了

    作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9926078.html 在本文中,我将带着大家一步一步的通过图文的形式来演示如何在Visual Studi ...

  5. 使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之一

    好吧,现在我们假设你已经安装好了VS Code开发工具..Net Core 2.0预览版的SDK dotnet-sdk-2.0.0(注意自己的操作系统),并且已经为VS Code安装好了C#扩展(在V ...

  6. vs code开发.net core项目入门

    今天用vs code来开发net core项目,写一下简要的开发流程,主要步骤如下,看完后你会发现特别简单 1.命令如下: (cmd中运行以下命令,下面命令都基于选择好自己的项目路径) 1.新建文件夹 ...

  7. 如何使用 VS Code开发.NET Core应用程序

    Visual Studio Code(VS Code)是Microsoft为Windows,Linux和Mac操作系统开发的免费,跨平台,轻量级的源代码编辑器,它是源代码编辑器,而Visual Stu ...

  8. mac os 下 vs code 开发 .net core

    1.软件下载 .net core 2.0 sdk: vs code 最新版: 2.用 dotnet 命令行 dotnet cli 创建项目 打开终端,创建这次项目的文件夹,mkdir Demo1: c ...

  9. 使用VS Code 开发.NET CORE 程序指南

    1. 前言 近两年来,很多前端的同学都开始将 VSCode 作为前端主力开发工具,其丰富的扩展给程序开发尤其是前端开发带来了很多便利,但是作为微软主力语言的 .NET,却由于有宇宙第一编辑器 Visu ...

随机推荐

  1. python_为被装饰的函数保留元数据

    案例: 在函数对象中保存着一些函数的元数据,如: f.__name__           函数名 f.__doc__              函数文档 f.__moudle__       函数所 ...

  2. scrapy_css

    css选择器标准格式:reponse.css(css选择器::获取值) css选择器有哪些? *            选择所有节点 #id         选择id的节点 .container    ...

  3. sublime markdown编辑配色

    Boxy package control : install package 选择Boxy theme preferences->settings配置: { "color_scheme ...

  4. DNS入门

    引言 常见的计网协议通过IP地址来识别分布式应用的主机,然而IPV4(特别是IPV6)的地址太繁琐难以使用和记忆,因此提出了使用主机名称来识别,实质是:主机名称通过称为名称解析的过程转换为IP地址.其 ...

  5. MySQL中时间函数NOW()和SYSDATE()的区别

    mysql中日期函数还是比较常用的.主要有NOW()和SYSDATE()两种,虽然都表示当前时间,但使用上有一点点区别. NOW()取的是语句开始执行的时间,SYSDATE()取的是动态的实时时间. ...

  6. 豹哥嵌入式讲堂:ARM知识概要杂辑(1)- 内核架构编年史

    众所周知,ARM公司是一家微处理器行业的知名企业,ARM公司本身并不靠自有的设计来制造或出售CPU,而是将处理器架构授权给有兴趣的厂家.这些厂家基本涵盖了全球领先的知名半导体企业.软件和OEM厂商:T ...

  7. ng机器学习视频笔记(一)——线性回归、代价函数、梯度下降基础

    ng机器学习视频笔记(一) --线性回归.代价函数.梯度下降基础 (转载请附上本文链接--linhxx) 一.线性回归 线性回归是监督学习中的重要算法,其主要目的在于用一个函数表示一组数据,其中横轴是 ...

  8. awk运用

    awk编程: 1. 变量: 在awk中变量无须定义即可使用,变量在赋值时即已经完成了定义.变量的类型可以是数字.字符串.根据使用的不同,未初始化变量的值为0或空白字符串" ",这主 ...

  9. 浅谈 HTML5plus 开发移动应用

    什么是 HTML5plus DCloud 公司提供的,使用传统 web 技术开发移动应用的解决方案. 增强版的手机浏览器引擎,让HTML5达到原生水平! 产品口号,总会有些夸张的成分,不要在意这些细节 ...

  10. 覆盖equals()时总要覆盖hashCode()

    覆写如下: public class User{ private Integer id; private String userName; private String passWord; publi ...