位置记录中的 StyleCopAnalyzers/SA1313:应该禁用吗?

xav*_*ier 5 stylecop c#-9.0

使用 C# 9,您可以执行以下操作:

public record Person(string FirstName, string LastName);
Run Code Online (Sandbox Code Playgroud)

来定义记录Person。这相当于:

public record Person 
{ 
    public string FirstName { get; init; } 
    public string LastName { get; init; }
    public Person(string firstName, string lastName) 
      => (FirstName, LastName) = (firstName, lastName);
    public void Deconstruct(out string firstName, out string lastName) 
      => (firstName, lastName) = (FirstName, LastName);
}
Run Code Online (Sandbox Code Playgroud)

根据这个页面

因此,元素FirstNameLastName作为构造函数的属性和参数。作为属性,这些元素应该大写,但如果我这样做,SA1313 会抱怨:Parameter '__' must begin with lower-case letter..

这是 StyleCop 的问题还是我做错了什么?

rip*_*ey_ 4

这是 StyleCop 中的一个问题,已在 1.2.0-beta.261 版本中修复

  • 2 年后,StyleCop.Analyzers 的发行版本仍然是 1.1.x! (3认同)