【问题标题】:Refactor all code files to remove type qualifiers重构所有代码文件以删除类型限定符
【发布时间】:2019-11-14 12:16:23
【问题描述】:

想象一下这个场景: 您打开一个包含多个项目和大量 C# 代码的 Visual Studio 解决方案。一些您以前从未见过的旧代码。您需要删除所有多余的类型限定符,而无需手动检查代码。你是做什么的??

我看到其他人建议使用搜索和替换,但这不是很实用。我的解决方案包含很多项目和文件。其中很多是我确定的旧代码,其中包含大量冗余限定符。就像老开发人员使用类型限定符有某种强迫症一样。

如何删除整个解决方案中的所有类型限定符?我已经尝试了各种重构扩展,它们可以以多种方式操纵我的代码......但没有一个能弄清楚如何改变

System.Collections.Generic.List<SomeObject> myList = new System.Collections.Generic.List<SomeObject>(); 
var item = new MyApp.Controls.Models.Car();

List<SomeObject> myList = new List<SomeObject>(); 
var item = new Car();

【问题讨论】:

  • 我安装了 Resharper 并让它为我做这件事。
  • 我试过了,但 Resharper 不能按照我的要求做。当您在代码行时,Resharper 可以重构冗余类型限定符。我正在搜索:“右键单击解决方案 -> 删除所有冗余类型限定符”或在“清理代码”扩展期间以某种方式。
  • 如果没有第三方工具,您必须坚持使用查找/替换,然后通过相应地添加使用来修复构建错误
  • 但我要的是第 3 方工具 :) 有什么工具可以帮助我吗?
  • Resharper 可以做到这一点。当您在线时,按 ALT+ENTER 并获取您可以执行的操作,突出显示该操作并向右移动。您将获得一个新菜单,允许您在不同范围内执行重构。 jetbrains.com/help/resharper/…

标签: c# visual-studio refactoring


【解决方案1】:

不要单击选项转到箭头并在解决方案中的任何地方找到 Arrange 限定符。

您可以完成大部分修复。不只是删除多余的限定符。使用锐器。

【讨论】:

  • 通过这样做,我将删除该特定类型的冗余限定符,仅此而已。所以仍然必须打开所有文件并检查是否有我尚未发现的新冗余限定符。似乎这可能是最好的解决方案。但不是很好。
  • @Christian 它将全部删除!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-08
  • 1970-01-01
  • 2020-06-20
  • 2014-06-13
相关资源
最近更新 更多