有没有办法让 Resharper 忽略未使用的引用?

Posted

技术标签:

【中文标题】有没有办法让 Resharper 忽略未使用的引用?【英文标题】:Is there a way I can have Resharper ignore an unused reference? 【发布时间】:2015-01-20 04:42:10 【问题描述】:

使用 Resharper,我们可以右键单击项目的引用并选择优化引用。这向我们展示了编译器未使用或不需要的类库。

我有一个仅用作参考的类库(永远不需要实际使用代码)。只要 dll 是引用的一部分,它就会在启动时自行注入。如果您好奇为什么会这样做,它会处理 ASP.NET MVC 项目的未找到和错误 (Nuget package page)。

是否有任何可能的方法可以告诉 Resharper 这个引用是编译器所需的一部分或使用的引用的一部分?我只是想尝试防止开发人员意外删除我的 dll。

【问题讨论】:

就个人而言,我只想让他们知道。如果他们在那个项目中工作,他们应该知道它做了什么以及需要什么。好奇,如果还有办法。 大多数开发人员不会经历这个(特别是如果他们没有安装 resharper)。但我想确保我已经覆盖了我所有的基础。我是那种会优化引用以确保我没有多余的类库的人。 我发现 nuget 包仅仅通过它们的存在就改变了应用程序的行为而没有在应用程序启动代码中显式注册非常烦人。 “只要它是引用的一部分,该 dll 就会在启动时自行注入” - 戴上我的“智力好奇”帽子,酷!好东西! ;但是戴上我的“维护程序员”帽子,哦,天哪,你在做什么...... @AakashM 这实际上很容易做到,并且由 Microsoft 内置。我使用的实际源代码是here(见第4行),关于类的信息是here。 【参考方案1】:

您可以将 Resharper 与 StyleCop 接口。它允许基于 StyleCop 设置在您的代码中发出警告。 对于每个警告,都有一种方法(使用“Resharper 气泡”)来禁用警告: http://tof.canardpc.com/view/49d10973-eb25-4a26-90b2-19d872083285.jpg

它在你的代码中添加一个注释行来禁用警告警报;

// ReSharper disable once RedundantUsingDirective
using My.Unused.Reference;

经过一些测试,当您触发“优化参考”时,Resharper 似乎并不关心这一点

【讨论】:

你能扩展这个答案来解释代码吗?这对未来的观众会更有帮助。 那是一个 using 语句。不是参考。我不明白这实际上是如何应用的。

以上是关于有没有办法让 Resharper 忽略未使用的引用?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法将 ReSharper 代码清理设置应用于 .scss (SASS) 文件?

在 ReSharper 测试运行程序中显示测试输出

添加 ReSharper_ToggleSuspended 作为工具栏按钮

ReSharper Unit Test Runner 忽略部署项配置

Resharper 将我的 NUnit 测试标记为未使用

为啥我的resharper控件安装之后没有显示