如何在 C# 中更改 VisualStudio Mac 中生成字段的默认命名约定?

How to change the default naming convention of generated fields in VisualStudio Mac in C#?

我很难找到这个选项,如果它存在的话。默认情况下,当 VSMac 生成一个字段时,它会将其创建为 "this.fieldName" 我更喜欢对 iVars 使用下划线,因此我想修复它,以便默认将其创建为“_fieldName”。有谁知道如何做到这一点?我似乎无法在首选项中找到它。谢谢。

Visual Studio for Mac 对 .editorconfig 文件有一些支持。 Roslyn 重构应该考虑到这一点。

如果您在解决方案目录中创建一个 .editorconfig 文件(您可能需要为 Mac 重新启动 Visual Studio 才能解决此问题)。然后编辑 .editorconfig 文件,使其包含:

[*.{cs,vb}]

# Instance fields are camelCase and start with _
dotnet_naming_rule.instance_fields_should_be_camel_case.severity = suggestion
dotnet_naming_rule.instance_fields_should_be_camel_case.symbols = instance_fields
dotnet_naming_rule.instance_fields_should_be_camel_case.style = instance_field_style

dotnet_naming_symbols.instance_fields.applicable_kinds = field

dotnet_naming_style.instance_field_style.capitalization = camel_case
dotnet_naming_style.instance_field_style.required_prefix = _

然后,例如,如果您在新 class:

中创建一个构造函数
class MyClass
{
    public MyClass(int test)
    {
    }
}

然后右击'test'参数和selectCreate and initialize field。 Visual Studio for Mac 将生成代码:

public class MyClass
{
    private readonly int _test;

    public EmptyClass(int test)
    {
        _test = test;
    }
}

如果没有此 .editorconfig 文件,Visual Studio for Mac 将生成代码:

public class MyClass
{
    private readonly int test;

    public EmptyClass(int test)
    {
        this.test = test;
    }
}