Visual Studio停止在特定区域使用重构

ttisahbt  于 2023-10-23  发布在  其他
关注(0)|答案(1)|浏览(182)

通常,我可以通过将两个pragma warning disable语句 Package 在它周围来禁用一个烦人的警告。例如:

  1. #pragma warning disable IDE0060
  2. public static int MultiplyByZero(int Number)
  3. => 0;
  4. #pragma warning restore IDE0060

但是,请考虑以下情况:
我有一个文件,它使用了许多静态类,所有这些类都在同一个名称空间中。它们的名字很有预见性:

  1. using static MyLib.Class0;
  2. using static MyLib.Class1;
  3. using static MyLib.Class2;
  4. ...
  5. using static MyLib.Class9;

然而,我的类并不总是使用所有这些静态类。在一次编辑之后,它可能只使用Class0Class3Class4。然后,它可能只使用Class1, Class3, and Class6。但我知道它总是会用到其中的一些类。
当我试图保存文件时,Visual Studio自然希望重构掉所有未使用的using。毕竟,我告诉它这样做,我仍然希望其他未使用的using也这样做,只是这些没有。
Visual Studio没有提供用于删除不必要的using的ID,但我在Google上查找了它,发现它是IDE0005。所以,就像任何优秀的程序员一样,我把它放在我的using s周围:

  1. #pragma warning disable IDE0005
  2. using static MyLib.Class0;
  3. using static MyLib.Class1;
  4. using static MyLib.Class2;
  5. ...
  6. using static MyLib.Class9;
  7. #pragma warning restore IDE0005

Visual Studio同意我的看法,即pragma s是必要的,因为它没有像通常对不必要的pragma s那样减轻它们。我以为这意味着它会做我想做的事。但是,当我点击保存时,我的using s无论如何都消失了。
我查看了Intellisense对除了warning之外的其他类型的pragma的建议。只有checksum,它的文档看起来相当可怕,而且与我的问题无关。
如何让Visual Studio保留特定的using语句?
需要说明的是,我并不是在寻找文件范围或项目范围的解决方案。还有其他地方,我想这个功能。我只需要一种方法来标记特定的代码位,这样就不会删除using s。

编辑:

正如评论中的多个用户所指出的,这不是Visual Studio的默认行为。我在配置代码选项中选择了“删除不必要的导入或使用”。我没想到不是每个人都这么做。因此,我想问题实际上是,“我如何才能禁用特定几行代码的代码验证”。

w8biq8rn

w8biq8rn1#

正如用户在评论中所说,Visual Studio中目前不存在这样的功能。希望将来会有这样的功能,但目前还没有。
在那之前,我已经通过注解掉不必要的用法来解决这个问题。然后,当它们是必要的,我可以简单地取消注解它们使用它们。
无论如何,感谢那些尝试过的人。编码愉快。

相关问题