1. 前言

近两年来,很多前端的同学都开始将 VSCode 作为前端主力开发工具,其丰富的扩展给程序开发尤其是前端开发带来了很多便利,但是作为微软主力语言的 .NET,却由于有宇宙第一IDE Visual Studio存在,很少有看到有后端同学使用,笔者自己在 VSCode 刚出来时就折腾过将主力开发工具迁移至 VSCode,这样可以跨平台做开发(实际是当时想尝试在Mac上做开发),但当时由于插件还不完善,折腾过程也比较坑,遂放弃,继续拥抱宇宙第一编辑器。

近日有点时间,再次折腾VSCode,惊喜发现已经基本可以用VSCode完成大部分的开发工作,先将过程分享出来,给那些喜欢折腾的同学参考。

注意:本文只针对 .NET CORE 而非 .NET Framework 开发,同时需要对 VSCode 基本操作有一定的了解,如果你还在编写 .NET Framework 程序或者从来没有使用过VSCode,还需要先了解一些基础知识。

官方文档

2. 插件安装说明

  1. 必装插件:

    • C#

    • C# Extensions

      有了以上插件,已经基本可以在VSCode中编写C#代码了,基本的智能感知,关键字高亮等功能都可以使用。

  2. 进阶安装

    • VSCode-icons

      VSCode-icon 可以给文件目录中的文件添加icon,便于我们分辨文件的类型

    • VSCode-solution-explorer

      从Visual Studio迁移过来的同学比较大的一个问题就是,原来熟悉的解决方案不见了,纯粹的文件自我管理的方式用起来总是很别扭,安装了这个插件,VSCode 中将会增加一个菜单,原来熟悉的 Visual Studio 操作方式又回来了,具体看下图:

      有了此插件,我们在解决方案或者项目上右键,分别会弹出相应的快捷键菜单,满足我们日常开发中的一些常规操作:

      • 创建新项目
      • 添加/删除文件
      • 编译/打包
      • 移动项目至指定的文件夹
      • 其他

      例如将项目加入到指定文件夹下,便于管理:

    • Visual Studio Keymap

      该插件可以将常用的 Visual Studio 快捷键映射到 VSCode 中,比如格式化代码快捷键 Ctrl+K+D

    • C# XML Documentation Comments

      该插件主要是可以方便的添加代码注释,例如在Visual Studio 中的 ///

    • NuGet Package Manager

    • NuGet NuPkg Viewer

      目前添加nuget包,由于国内你懂的原因,导致在查询版本的时候会报错,无法正常安装,建议大家直接右键 csproj 项目文件添加相应的nuget包,关于这个问题,大家可以关注github上的 Issue

    • .NET Core Test Explorer

      经过我的测试,.NET Core Test Explorer单元测试插件对于 MS Test 会出现无法发现的问题,建议大家采用xunit作为单元测试组件

      注意:单元测试必须在当前Workspace中进行配置Test Project Path:即单元测试的项目名称,同时也可以在当前项目根目录中的.VSCode 添加 setting.json 文件,并添加如下配置项:

{
"dotnet-test-explorer.testProjectPath": "unittest"
}

3. 后记

有了上述插件的支持,我们基本上已经可以使用 VSCode 开发.NET CORE 应用程序了,不过由于目前安装Nuget包时会出现一些网络问题,笔者当前是采用 Visual Studio 添加各个组件包的引用,采用 VSCode 做开发,整个流程下来,还是可以胜任的。

由于笔者之前是Reshaper重度用户,喜欢 Alt+Enter 快捷键做一些快捷快捷操作,而VSCode中也会有一些快速提示操作,不过快捷键并不是Alt+Enter,需要自定义修改,修改方式如下(同理其他的快捷键也是在此改动):

最后,VSCode 对于 Spring Boot 的支持也是相当友好的,笔者之前也使用 VSCode 开发过java程序,尤其是那些需要 NET 和JAVA 同时开发的同学,有兴趣也可以自己折腾下,这样就不用记两套快捷键了,而且 VSCode 的打开速度比 IDEA 快很多。

使用VS Code 开发.NET CORE 程序指南的更多相关文章

  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. SQL 横转竖 、竖专横 (转载) 使用Dapper.Contrib 开发.net core程序,兼容多种数据库 C# 读取PDF多级书签 Json.net日期格式化设置 ASPNET 下载共享文件 ASPNET 文件批量下载 递归,循环,尾递归 利用IDisposable接口构建包含非托管资源对象 《.NET 进阶指南》读书笔记2------定义不可改变类型

    SQL 横转竖 .竖专横 (转载)   普通行列转换 问题:假设有张学生成绩表(tb)如下: 姓名 课程 分数 张三 语文 74 张三 数学 83 张三 物理 93 李四 语文 74 李四 数学 84 ...

  4. 初识Visual Studio Code 一.使用Visual Studio Code 开发C# 控制台程序

    原文:初识Visual Studio Code 一.使用Visual Studio Code 开发C# 控制台程序 1. 安装.NET Core 安装包下载地址:https://www.microso ...

  5. 使用Dapper.Contrib 开发.net core程序,兼容多种数据库

    关于Dapper的介绍,我想很多人都对它有一定的了解,这个类似一个轻型的ORM框架是目前应用非常火的一个东西,据说各方面的性能都不错,而且可以支持多种数据库,在开始介绍这个文章之前,我花了不少功夫来学 ...

  6. Dapper.Contrib 开发.net core程序,兼容多种数据库

    Dapper.Contrib 开发.net core程序,兼容多种数据库 https://www.cnblogs.com/wuhuacong/p/9952900.html 使用Dapper.Contr ...

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

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

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

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

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

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

随机推荐

  1. [leetcode] 300. Longest Increasing Subsequence (Medium)

    题意: 求最长增长的子序列的长度. 思路: 利用DP存取以i作为最大点的子序列长度. Runtime: 20 ms, faster than 35.21% of C++ online submissi ...

  2. 二十、Sql Server 保留几位小数的两种做法

    问题: 数据库里的 float momey 类型,都会精确到多位小数.但有时候 我们不需要那么精确,例如,只精确到两位有效数字. 解决: 1. 使用 Round() 函数,如 Round(@num,2 ...

  3. Git初步配置 ubuntu服务器 windows客户端 虚拟机

    最近自己配置了一下Git,虽然网上相关的内容满天飞(ps:大多都差不多,很多都是直接转载,说的也比较乱),但是我还是碰到了很多问题,这里我就把我配置的步骤分享一下,遇到的问题也说一下,新手之间相互学习 ...

  4. 《HelloGitHub》第 40 期

    <HelloGitHub>第 40 期 兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这是一个面向编程新手.热爱编程. ...

  5. 机器学习经典分类算法 —— k-近邻算法(附python实现代码及数据集)

    目录 工作原理 python实现 算法实战 约会对象好感度预测 故事背景 准备数据:从文本文件中解析数据 分析数据:使用Matplotlib创建散点图 准备数据:归一化数值 测试算法:作为完整程序验证 ...

  6. 使用.csv文件

    引用自:https://blog.csdn.net/vision_tung/article/details/79845758 通用爬虫:https://blog.csdn.net/Vision_Tun ...

  7. Selenium+java - 弹出框处理

    一.弹出框分类: 弹出框分为两种,一种基于原生JavaScript写出来的弹窗,另一种是自定义封装好的样式的弹出框,本文重点介绍原生JavaScript写出来的弹窗,另一种弹窗用click()基本就能 ...

  8. 解决:django.db.utils.OperationalError: unable to open database file

    这是一个从GitHub上下载的,一个网站项目的源码.想要在自己的电脑上运行,期间过程相当曲折,不过至此终于是完成了. 1.安装过程: python2->virtualenv->django ...

  9. 当面对会反制遭破解装置的App该如何顺利提取数据

    在检测App的过程之中,总会遇到比较棘手的,以”侦测是否遭破解的装置”为例,便会是个不好处理的状况.当App具备侦测装置是否已遭Root时,一旦发现装置已遭破解,便会停止运行,等于是只准安装及运行在未 ...

  10. AppBoxFuture: 123挨个站-数据按序存储

      最近几天在优化存储的编码规则,顺带把之前设计了但未实现的倒排序一并实现了.由于所有数据(元数据.实体.索引等)都映射至RocksDB的Key-Value存储,所以必须扩展RocksDB的自定义比较 ...