StyleCop SA1202 - 内部 属性 与私人集
StyleCop SA1202 - Internal property with private set
我收到一个 StyleCop 错误,我不确定如何修复,除了在我的 class 上添加抑制消息外,这是不好的做法。如果您知道如何解决这个问题,或者知道这是否只是 StyleCop 的错误或缺陷,请告诉我。
注意:我不知道这是否会有所不同,但我在 Visual Studio 2015 年使用 HEISER Christophe 的 Visual StyleCop 扩展。
我有一个具有内部属性的内部 class。示例:
internal bool Property1 { get; set; }
internal int Property2 { get; private set; }
尽管我所有的属性都有内部访问器,并且在 class 中正确排序,根据 StyleCop and Visual StyleCop 排序规则文档,我仍然收到 SA1202 错误 "All private properties must be placed after all internal properties"。该错误对我来说没有意义,因为我的所有属性都具有内部访问权限。我假设这是因为私有集,但即使我在没有私有 setter 的属性之后(甚至之前)订购所有具有私有 setter 的属性,我仍然会收到相同的错误。在我看来,StyleCop 几乎无法识别或无法正常处理这种情况。
关于如何解决这个问题的任何想法(在 class 上没有禁止消息)或者如果这只是 StyleCop 中的 bug/flaw?
这似乎是 Visual StyleCop 扩展的错误。
使用 StyleCop.MSBuild 实现可以正常构建。
我已将此作为问题添加到 Github。
Jafo,你能把你的 class 的完整代码粘贴到这里吗:Visual StyleCop - GitHub - Issue 47 因为它在我这边用下面的代码工作:
// --------------------------------------------------------------------------------------------------------------------
// <copyright file="InternalClass.cs" company="TestCompany">
// MS-PL
// </copyright>
// --------------------------------------------------------------------------------------------------------------------
namespace ConsoleApplication10
{
/// <summary>
/// Test internal class.
/// </summary>
internal class InternalClass
{
/// <summary>
/// Gets or sets a value indicating whether the property one.
/// </summary>
internal bool Property1 { get; set; }
/// <summary>
/// Gets the property two.
/// </summary>
internal int Property2 { get; private set; }
}
}
我收到一个 StyleCop 错误,我不确定如何修复,除了在我的 class 上添加抑制消息外,这是不好的做法。如果您知道如何解决这个问题,或者知道这是否只是 StyleCop 的错误或缺陷,请告诉我。
注意:我不知道这是否会有所不同,但我在 Visual Studio 2015 年使用 HEISER Christophe 的 Visual StyleCop 扩展。
我有一个具有内部属性的内部 class。示例:
internal bool Property1 { get; set; }
internal int Property2 { get; private set; }
尽管我所有的属性都有内部访问器,并且在 class 中正确排序,根据 StyleCop and Visual StyleCop 排序规则文档,我仍然收到 SA1202 错误 "All private properties must be placed after all internal properties"。该错误对我来说没有意义,因为我的所有属性都具有内部访问权限。我假设这是因为私有集,但即使我在没有私有 setter 的属性之后(甚至之前)订购所有具有私有 setter 的属性,我仍然会收到相同的错误。在我看来,StyleCop 几乎无法识别或无法正常处理这种情况。
关于如何解决这个问题的任何想法(在 class 上没有禁止消息)或者如果这只是 StyleCop 中的 bug/flaw?
这似乎是 Visual StyleCop 扩展的错误。
使用 StyleCop.MSBuild 实现可以正常构建。
我已将此作为问题添加到 Github。
Jafo,你能把你的 class 的完整代码粘贴到这里吗:Visual StyleCop - GitHub - Issue 47 因为它在我这边用下面的代码工作:
// --------------------------------------------------------------------------------------------------------------------
// <copyright file="InternalClass.cs" company="TestCompany">
// MS-PL
// </copyright>
// --------------------------------------------------------------------------------------------------------------------
namespace ConsoleApplication10
{
/// <summary>
/// Test internal class.
/// </summary>
internal class InternalClass
{
/// <summary>
/// Gets or sets a value indicating whether the property one.
/// </summary>
internal bool Property1 { get; set; }
/// <summary>
/// Gets the property two.
/// </summary>
internal int Property2 { get; private set; }
}
}