查找未使用的枚举成员

发布于 2024-07-18 03:34:05 字数 29 浏览 4 评论 0原文

确定枚举的哪些成员未被使用的最快方法是什么?

What is the quickest way to determine which members of an enum are not being used?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

千仐 2024-07-25 03:34:05

将枚举成员一一注释掉,看看您的代码是否可以编译。 如果编译失败,则使用该成员。 尽管此方法仅捕获枚举的编译时使用。 它们可以在运行时使用。

Comment the enum members out one by one and see if your code compiles. If compilation breaks, the member is used. Although this method only catches compile-time use of your enums. They could be used at runtime.

掩耳倾听 2024-07-25 03:34:05

如果您使用的是 ReSharper,请单击枚举进行检查,然后按 Alt+F7 (Shift+ F12(如果您使用 VS 快捷键),它会为您提供整个解决方案中使用的每个位置的列表。

If you're using ReSharper, click on the enum to check, hit Alt+F7 (Shift+F12 if you're using VS shortcuts), and it'll give you a list of every place it's used in your entire solution.

梦忆晨望 2024-07-25 03:34:05

为了安全起见,您可以使用 ObsoleteAttribute 标记您的成员。 如果使用给定的成员,添加 [Obsolete(true)] 将使构建失败。

显然,这不仅可以用于枚举,还可以用于 .NET 中的几乎所有内容。

如果您需要从解决方案中删除成员并且不担心不同解决方案中的其他用途,那么 Resharper 是您的首选工具。

Being on the safe side you can mark your members with ObsoleteAttribute. Adding [Obsolete(true)] will fail the build if given member is used.

This can obviously be used not only for enums but for nearly anything in .NET.

Resharper is your tool of choice if you need to delete the members from a solution and you're not worried about another uses in different solutions.

╰ゝ天使的微笑 2024-07-25 03:34:05

对枚举的每个成员使用查找引用是我能想到的最快的方法。

Using find references on each member of the enum is the fastest way I can think of.

金兰素衣 2024-07-25 03:34:05

Ctrl-F 并在整个命名空间/项目中搜索该枚举成员

Ctrl-F and search the entire namespace/project for that member of enum

打小就很酷 2024-07-25 03:34:05

如果您使用的是 VS2005/8 Ctrl-Shift-F,请在文件中搜索。 这将为您提供一个文件列表,您可以双击该列表来转到各行。

如果您不使用 VS,那么您可以使用 WinGrep,它将执行相同的操作(没有双击功能)

If you are using VS2005/8 Ctrl-Shift-F so search in the files. This will give you a list of files that you can double-click to goto the lines.

If you don't use VS then you can use WinGrep which will do the same thing (without the double-click feature)

天冷不及心凉 2024-07-25 03:34:05

评论/取消评论成员。 如果编译器没有抛出错误,则不使用枚举成员。

更新:正如评论中提到的,这当然仅适用于解决方案/活动构建配置中包含的项目。 对于“查找引用”和“Ctrl+F”方法也是如此。

另外,还可以选择进行文件搜索,例如使用 grep。 但是,此选项仅允许执行基于字符串的搜索,并且不解析任何类型。

Commenting / uncommenting members. If the compiler does not throw an error the enum member is not used.

Update: As mentioned in the comments this of course only works for projects contained in the solution / the active build configuration. The same holds for the Find References and Ctrl+F methods.

Otherwise there is also the option to do a file search, e.g. using grep. However, this option only allows to do a string-based search and does not resolve any types.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文