gpt4 book ai didi

c# - 有没有办法告诉 resharper 忽略整个解决方案的特定方法名称?

转载 作者:太空宇宙 更新时间:2023-11-03 23:17:23 24 4
gpt4 key购买 nike

基本上,我正在寻找与他们的 [UsedImplicitly] 注释类似的功能,但我有一组方法名称/签名,我想将它应用于整个解决方案,并且不想在所有地方使用注释.

我在 Unity3D 中的项目中使用 VS2015 和 Resharper 10。对于那些不熟悉的人,Unity3D 允许您从他们提供的类之一继承,以允许您编写的类附加到将存在于引擎内世界空间中的对象。然后,您的代码通过一系列与继承类相关的生命周期方法(Awake()、Start()、Update() 等)与继承类功能相关联。

不幸的是,由于遗留的(糟糕的)设计决策,Unity 不会将这些方法公开为虚拟方法或通过接口(interface)公开,而是在运行时使用类似于反射的技术来定位您的代码生命周期方法定义。这些意味着在设计时,没有对这些方法的直接引用,R# 将它们标记为未使用。

到目前为止,我能找到的唯一选择是总是注释每个方法(用大量注释污染代码库,因为这些方法被频繁地声明),总是将它们标记为公共(public)(一个可行的解决方案,但并不总是理想的,并违反 Unity3D 惯例),或者只处理 Resharper 抛出的误报。

理想情况下,我希望能够在 R# 设置中配置一些内容,以说明“具有此名称的方法应始终标记为 UsedImplicitly”或类似内容。到目前为止,虽然我还没有找到一种方法来做到这一点。任何的意见都将会有帮助。谢谢。

最佳答案

没有办法让 ReSharper 为通用代码库执行此操作,但有一个适用于 Unity 的 ReSharper 扩展可以执行您想要的操作。它识别派生自 MonoBehaviour 的类,并将适当的方法标记为正在使用。目前有未完成的拉取请求以支持更多方法,我希望尽快将它们合并并发布。

转到 ReSharper → Extension Manager 并搜索“Unity”。

关于c# - 有没有办法告诉 resharper 忽略整个解决方案的特定方法名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36801160/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com