【问题标题】:"Auto-property accessor is never used" warning from ReSharper来自 ReSharper 的“从不使用自动属性访问器”警告
【发布时间】:2017-11-11 11:18:26
【问题描述】:

我们的应用程序是一个 MVC 应用程序。我尝试使用 ReSharper 运行代码分析。我在许多视图模型属性中都收到“从未使用自动属性访问器”作为警告。

例如,ReSharper 在此显示警告:

public bool IsLegalEntry { get; set; }

我可以做一个私人二传手吗,或者任何人都可以提出替代方案吗?

【问题讨论】:

  • public bool IsLegalEntry { get; private set; }
  • @Андрей 将隐藏警告但破坏应用程序。 MVC 的模型需要可公开写入的属性。将 setter 设为私有不是这里的解决方案。
  • 是的,谢谢您的回复。所以这就是混乱。如果我们试图解决警告,它可能会影响应用程序。

标签: c# asp.net-mvc resharper-8.0


【解决方案1】:

你可以将 setter 设为私有

public bool IsLegalEntry { get; private set; }

但是,如果隐式使用 setter,这可能会导致运行时错误。或者,您可以使用 JetBrains.Annotations.UsedImplicitlyAttribute 来装饰 setter。

public bool IsLegalEntry { get; [UsedImplicitly] set; }

【讨论】:

    【解决方案2】:

    作为“警告修复/抑制”范例的替代方案,您可以将测试项目添加到您的解决方案中。然后为您的业务逻辑编写一个测试命中有问题的访问器等等。

    但不确定这是您要查找的操作

    • 它提供了您所追求的效果
    • 保存冗余注释属性
    • 增加测试奖励

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-03
      • 2018-01-13
      • 1970-01-01
      • 1970-01-01
      • 2021-07-03
      • 1970-01-01
      相关资源
      最近更新 更多