在构建服务器上,我看到一些奇怪的消息。它没有这么说,但我认为它来自一些名为'fx cop'的软件
警告CS0067:从未使用过'SunGard.Adaptiv.AnalyticsEngine.UI.CommonControls.DisabledCommand.CanExecuteChanged'事件
我怎样才能使这条消息沉默?不改变我班级的作用。
sealed class DisabledCommand : ICommand
{
public event EventHandler CanExecuteChanged;
我偶然发现System.Diagnostics.CodeAnalysis.SuppressMessageAttribute
的文档听起来很有用,但我的警告没有任何示例。
答案 0 :(得分:16)
如果您需要创建一个永不引发的事件,您应该制作一个noop事件:
public EventHandler CanExecuteChanged {
add { }
remove { }
}
编译器抱怨,因为默认(“类似字段”)事件将创建一个隐藏的后备字段来存储处理程序。由于你从不提出事件,该字段只会浪费内存。