如何抑制具有“注入”属性的属性的“锐减”广度分析警告?

时间:2019-03-08 06:55:59

标签: c# resharper ninject static-analysis

我们在C#项目中使用依赖项注入程序Ninject。常见的实现方式如下:

[Inject]
public UsersRepositoryInterface UsersRepository { private get; set; }

除此之外,我为该解决方案启用了Resharper Wide Analysis,它向我显示此行中的警告:

  • 可以将属性“ VrtSystemsFlatRepository”设置为私有
  • 从不使用自动属性访问器

enter image description here

我内心的完美主义者一见到我便遭受痛苦,我不知道该如何避免这种警告。

我知道两种方法,但是我都不喜欢这两种方法。

  1. 除了UsedImplicitly之外,还添加Inject属性。该警告将被取消,但是我需要将此属性添加到这么多地方。
  2. 全局抑制解决方案,项目或文件的警告。

2 个答案:

答案 0 :(得分:0)

您可以配置Ninject以通过向内核传递带有不同[Inject]的{​​{1}}来寻找NinjectSettings以外的自定义属性。您应该能够从InjectAttribute继承此自定义属性,以抑制“重新共享”警告。

答案 1 :(得分:0)

需要在JetBrains的外部注释包中为“ Ninject.InjectAttribute”添加“ MeansImplicitUse”注释: https://github.com/JetBrains/ExternalAnnotations/issues/161