• VS2017开发.NET Core的推荐设置
  • 发布于 2个月前
  • 1689 热度
    0 评论
  • 土豆泥
  • 1 粉丝 24 篇博客
  •   
Visual Studio 一直是.NET程序员的好伙伴,如今虽然.NET Core的开发可以用VSCode等其他环境,但VS依旧有强大的优势。

今天来介绍下如何让VS用得更顺手的技能

基本配置
首先要搞清楚的一点是,并不是所有版本的Visual Studio都支持.NET Core开发,甚至2017的早期版本也不行。有些童鞋误以为只要安装了.NET Core的SDK,就可以使用很久以前安装的VS2017开发,这会导致代码无法编译通过。
例如:对于.NET Core 2.1版本,至少要求 VS2017 升级到15.7。目前.NET Core 最新的 release 是2.2,所以我推荐大家始终保持 VS2017 升级到最新。
升级方法
👇
在开始菜单里搜索 Visual Studio Installer

一旦 IDE 有更新

就可以点击 “Update” 按钮安装更新

另外,确保你已经勾选了

👇

“ .NET Core cross-platform development” 

这个 workload

时间久了,随着 VS 的每次更新,你的机器里会出现各种版本的 .NET Core SDK。我的习惯是保留当前版(2.2)和LST(2.1)的最新 SDK,其他都可以卸载。
👽其中2.1.202,是 VS 2017自作聪明装上的,对应的其实是 .NET Core 2.0的版本,如果你不开发2.0的话,完全可以手工卸载。2.1.503对应的是 .NET Core 2.1.7,2.2.103对应的 是.NET Core 2.2.1。这些小版本通常是安全更新。

要查看机器上的 .NET Core SDK 已经 runtime

可以用 dotnet --info 命令:


插件

ReSharper
我个人必用的插件是 ReSharper,这个是收费插件,但提供了非常完备和强大的功能,比如批量重命名、整理 namespace、推荐使用新版 C# 的语法等等。
并且,它很早就支持 .NET Core 了。如果你有不错的开源项目,也可以向JetBrains申请免费使用。
产品地址
https://www.jetbrains.com/resharper/ 

对于.NET Core 来说,我们经常写依赖注入,那么有了 ReSharper,你就可以让插件一键帮你生成构造函数注入,省时省力。


Web Essentials
另一套插件是 Web Essentials ,在 VS2017版里,它是一个插件全家桶,其中包含了众多子插件都可以独立安装。

在 Tools > Extensions and Updates 下就是 VS2017的插件窗口,点击 Online 选项卡,然后搜索 "Web Essentials",即可下载安装这个全家桶。

桶里的功能实在太多,我挑几个有代表性的给大家的介绍一下。


Bundle & Minifier

这是一款在编程或编译时压缩和打包 CSS/JS 文件的插件。通过工程目录下的 bundleconfig.json 文件定义压缩和打包规则,一目了然。然后你在编辑保存源文件的时候,目标打包文件就会自动更新。

在脱离 VS 的环境下,例如你的 CI 环境,也可以做到编译时重新生成打包文件。只需要指定"Enable bundle on build" 即可。

实际上这个命令的作用是在你的工程文件里添加了一个NuGet包:
<PackageReference Include="BuildBundlerMinifier" Version="2.8.391" />

Open Command Line
.NET Core 经常需要手工敲命令来装逼,例如使用 dotnet 或 libman 的 CLI 命令。这款插件能够帮助你在选定的路径直接打开 cmd 或 PowerShell。


设置
关于皮肤
VS 默认是浅色皮肤的,许多人将它改成黑色,除了能装逼以外,是有实用道理的。
注意看红线圈出的接口类型的颜色,这是黑色皮肤下的。

如果用默认的(Blue)浅色皮肤,就难以辨别是接口还是类了:

而.NET Core 里因为依赖注入的大量使用,一定是会遇到很多接口的,所以建议大家实用黑色皮肤,既能装逼,又能看清接口类型。

鸡肋追踪
在.NET Core 的工程里,VS 默认会在 Solution Explorer 里自动选中当前正在编辑的文件,这个鸡肋功能通常会造成麻烦,特别是你在编辑同一个文件夹的临近文件,而又临时需要看另一个工程目录里的文件。这个自动选中当前文件的功能会让我们不得不来回拖滚动条。其实是可以关闭的。
在 Project and Solutions 里,取消勾选 Track Active Item in Solution Explorer 即可。


自动换行

讲文明的程序员写代码会注意格式,然而我们没法控制团队里每一个成员都和自己一样牛逼,有时候也有一些三方或者工具生成的代码是不换行的。拖水平滚动条虽然能治疗颈椎病,但是显然降低了生产效率。我通常会把VS的自动换行打开。
在 Text Editor > All Languages 里,勾选 Word wrap

感谢看到这里,以上就是博主开发.NET Core程序时,使用的Visual Studio配置,欢迎大家留言补充!
用户评论