【发布时间】:2014-04-23 12:18:41
【问题描述】:
在我的 DLL 中,我使用 System.ObsoleteAttribute 将虚拟方法标记为已过时,但这并没有产生我预期的警告。
DLL 源(Baz):
[Obsolete("This method has become obsolete, please override `OnEnable` instead.")]
public virtual void OnSelected() {
}
public virtual void OnEnable() {
}
用户来源(Foo):
// CS0672 - Doesn't show useful message...
public override void OnSelected() {
}
在构建项目时会记录以下警告:
CS0672:成员
Foo.OnSelected()覆盖过时的成员Baz.OnSelected()。
将 Obsolete 属性添加到 `Foo.OnSelected()'
但我希望我的自定义过时消息在此警告中占主导地位,以便我的客户可以按照提供的说明进行操作。有没有办法做到这一点?
【问题讨论】:
-
能否请您展示您的作品..
-
您的客户会使用源代码还是编译后的程序集?
-
@Trajan 客户引用已编译的程序集。
标签: c# .net visual-studio-2008 compiler-construction compiler-errors