ReSharper 2026.1 Help

代码检查:通过匿名委托取消订阅事件。

此检查会报告通过新的匿名委托尝试取消事件订阅的情况。 该取消订阅操作不会移除原有的处理程序,因为新的 Lambda 或匿名方法是不同的委托实例。

示例

publisher.Changed += (s, e) => Console.WriteLine("Changed"); publisher.Changed -= (s, e) => Console.WriteLine("Changed");
EventHandler handler = (s, e) => Console.WriteLine("Changed"); publisher.Changed += handler; publisher.Changed -= handler;

快速修复

没有针对此检查的专用快速修复。 一种常见的修正方法是存储委托实例,并在订阅和取消订阅时使用同一个变量。

2026年 5月 8日