首页 > 解决方案 > 用枚举值快速替换 int

问题描述

我正在尝试用(现有的)枚举值替换一些神奇的 int 数字。有很多情况,所以我想知道是否有加速这个过程的快捷方式或插件。

例子:

int myType;
//...
myType = 2;

这种类型有一个枚举:

enum MyEnum
{
    TypeA = 1,
    TypeB = 2,
    //...
}

最后,这就是我想要实现的目标:

MyEnum myType;
//...
myType = MyEnum.TypeB;

我可以手动完成,没问题。但是我总是必须在我的枚举中搜索正确的值,复制/粘贴值等。这需要很长时间。

是否有可以加快此过程的 Visual Studio / Resharper 快捷方式或插件?


编辑:我不需要一个完全自动化的过程。只是加快此过程的好方法。

特别是这部分:

MyEnum myType = (MyEnum) 2;

没有工具可以代替(MyEnum) 2MyEnum.TypeB

我理想的工作流程是这样的:更改 to 的类型,myType然后MyEnum神奇将任何已知的 int 值替换为其相应的枚举。

标签: c#visual-studiorefactoringresharper

解决方案


您可以使用 Visual Studio 本身的查找和替换文本工具。

https://docs.microsoft.com/es-es/visualstudio/ide/finding-and-replacing-text?view=vs-2019

您必须找到并替换整个解决方案:

(MyEnum) 1 with MyEnum.TypeA 
(MyEnum) 2 with MyEnum.TypeB

您只需要稍后检查某些 CS 课程是否有空间。

(MyEnum)1 with MyEnum.TypeA 
(MyEnum)2 with MyEnum.TypeB

推荐阅读