VS2017(可能还有更老的版本)给了我这个方便的小构造函数快捷方式,可以生成一个private readonly字段并将其赋值.

屏幕截图:

enter image description here

最终生成一个名为userService的私有成员,然后为其分配:

this.userService = userService;

这与我使用的代码样式相反,即用前缀_命名所有私有成员,结果赋值应该如下所示:

_userService = userService;

如何使VS通过其代码生成快捷方式遵守此代码样式规则?

推荐答案

这也可以直接在VisualStudio中实现.到Tools -> Options -> Text Editor -> C# -> Code Style -> Naming就行了.

  1. 首先,您需要通过点击[管理命名样式]按钮定义一个新的命名样式:

VS2017 Naming style dialog

  1. 然后单击+号为"Private or Internal Field"定义一个新规则,该规则使用您的新命名样式:

VS2017 Options dialog

  1. 重新启动Visual Studio

  2. 之后,当您应用"Create and initialize field"重构时,它将以一个前导下划线命名.

.net相关问答推荐

PowerShell中窗体定时器和系统定时器的统一处理

如何从 tshark 的 stderr 捕获实时数据包计数?

NET 6:控制器方法不可访问

无法通过构建目标访问 dotnet 的环境变量

使用 Task.WhenAll 但需要跟踪每个单独的 Task 的成功

什么是提升运算符?

如何在 ASP.NET Core MVC 中读取操作方法的属性?

在 C# 中输入按键

为什么 StyleCop 建议在方法或属性调用前加上this?

Environment.TickCount 与 DateTime.Now

在 Moq 中模拟泛型方法而不指定 T

RNGCryptoServiceProvider 的优缺点

是否有用于 Windows / C# 开发的可嵌入 Webkit 组件?

运算符重载 ==, !=, Equals

如何判断对象是否是某种类型的数组?

DateTime.TryParseExact() 拒绝有效格式

如何确定字符串是 C# 中的有效 IPv4 还是 IPv6 地址?

使用 XmlDocument 读取 XML 属性

ToLowerInvariant() 有什么问题?

App.config:用户与应用程序范围