【发布时间】:2010-10-12 17:26:32
【问题描述】:
可能重复:
Why are C# collection-properties not flagged as obsolete when calling properties on them?
我想将 ObsoleteAttribute 应用于属性,但编译器似乎只为直接使用属性生成警告/错误,任何间接使用都会被默默忽略。
我认为下面的例子很好地说明了这个问题:
using System;
class Program
{
static void Main(string[] args)
{
var o = new Old();
Console.WriteLine(o.Geezer); // compilation fails: 'ObsoleteAttributeTest.Program.Old.Geezer' is obsolete: 'Some error'
Console.WriteLine(o.Geezer.Attributes); // compiles OK
}
class Old
{
[ObsoleteAttribute("Some error", true)]
public System.Xml.XmlElement Geezer { get { return null; } }
}
}
【问题讨论】:
-
3 分钟,现在令人印象深刻,谢谢大家!抱歉提交重复:/
标签: c# properties attributes obsolete