怎么查网站开发的语言,网站如何添加外链,酒店装修,我想学网站建设需要选择什么书C# 特性#xff08;Attribute#xff09; 文章目录 C# 特性#xff08;Attribute#xff09;Obsolete语法示例代码 创建自定义特性#xff08;Attribute#xff09; Obsolete
这个预定义特性标记了不应被使用的程序实体。它可以让您通知编译器丢弃某个特定的目标元素。例…C# 特性Attribute 文章目录 C# 特性AttributeObsolete语法示例代码 创建自定义特性Attribute Obsolete
这个预定义特性标记了不应被使用的程序实体。它可以让您通知编译器丢弃某个特定的目标元素。例如当一个新方法被用在一个类中但是您仍然想要保持类中的旧方法您可以通过显示一个应该使用新方法而不是旧方法的消息来把它标记为 obsolete过时的。
语法
[Obsolete(message
)]或者
[Obsolete(message,iserror
)]示例代码
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp2
{public class Myclass{[Conditional(DEBUG)]public static void Message(string msg){Console.WriteLine(msg);}}[AttributeUsage(AttributeTargets.All)]public class HelpAttribute : System.Attribute{private string topic;public readonly string Url;public string Topic{get{return topic;}set{topic value;}}// url 是一个定位positional参数public HelpAttribute(string url){this.Url url;}}[HelpAttribute(Information on the class MyClass)]class MyClass { }class Test{[Obsolete(Dont use OldMethod, use NewMethod instead, true)]static void OldMethod(){Console.WriteLine(It is the old method);}static void NewMethod(){Console.WriteLine(It is the new method);}public static void Main(){OldMethod();}}
}
如果是false那么显示一个警告 如果是true那么就报错误
参数 message是一个字符串描述项目为什么过时以及该替代使用什么。参数 iserror是一个布尔值。如果该值为 true编译器应把该项目的使用当作一个错误。默认值是 false编译器生成一个警告。
创建自定义特性Attribute
创建并使用自定义特性包含四个步骤
声明自定义特性 构建自定义特性 在目标程序元素上应用自定义特性 通过反射访问特性