当前位置: 首页 > news >正文

百度公司在哪里网站优化公司排名深圳

百度公司在哪里,网站优化公司排名深圳,重庆建筑工程职业学院,北海做网站有哪家上篇文章讲述了C#反射知识点#xff0c;本文将介绍C#特性#xff08;Attribute#xff09;的知识点。C#特性#xff08;Attribute#xff09;是一种强大的元数据机制#xff0c;用于为代码元素#xff08;如类、方法、属性等#xff09;添加信息#xff0c;以影响它们…上篇文章讲述了C#反射知识点本文将介绍C#特性Attribute的知识点。C#特性Attribute是一种强大的元数据机制用于为代码元素如类、方法、属性等添加信息以影响它们的行为或提供额外的信息。本文将介绍C#特性每个.NET开发都应熟悉的知识点希望对大家开发有一定的帮助。 1、特性的基本概念 公共语言运行时使你能够添加类似于关键字的描述性声明称为特性以便批注编程元素如类型、字段、方法和属性它是以方括号[]的形式附加到代码元素上并可包含参数。特性的定义通常是通过创建一个继承自System.Attribute的自定义类来实现的。下面是一个简单的特性定义示例是.NET默认创建最小api的官方示例 [HttpGet(Name  GetWeatherForecast)]//特性public IEnumerableWeatherForecast Get(){return Enumerable.Range(1, 5).Select(index new WeatherForecast{Date DateOnly.FromDateTime(DateTime.Now.AddDays(index)),TemperatureC Random.Shared.Next(-20, 55),Summary Summaries[Random.Shared.Next(Summaries.Length)]}).ToArray();}以上特性是http的Get请求特性对外的链接名称是GetWeatherForecast。 详解–C#-特性Attribute 2、内置特性的示例 C#默认提供了一些内置特性例如[Obsolete]、[Serializable]和[Conditional]等。这样以便.NET开发很方便处理基本特定的逻辑任务。 [Obsolete] 特性[Obsolete]特性用于标记已过时的代码。它可以接受一个可选的消息参数用于提供有关为何该代码已过时的信息。 [Serializable] 特性[Serializable]特性用于标记一个类可以序列化以便将对象转换为字节流。例如 [Serializable] public class SerializableClass {// 类的成员 }3、自定义特性 当然大家也可以自定义特性以满足项目的特定需求。通常自定义特征需要继承Attribute类并在类上面加AttributeUsage特性然后在这下面处理需要的逻辑具体看之前我的一篇自定义特性的文章.NET特性Attribute简单自定义。下面是自定义了一个显示作者等信息的特性。 [AttributeUsage(AttributeTargets.Class, Inherited false, AllowMultiple false)] public class AuthorInfoAttribute : Attribute {public string Author { get; }public string Version { get; }public AuthorInfoAttribute(string author, string version){Author author;Version version;} } //使用特性 [AuthorInfo(DotNet开发跳槽, 1.0)] public class MyAwesomeClass {// 类的成员 }4、特性的应用场景 那么特性通常用在什么地方呢 特性在.NET生态系统中有多种应用场景比如代码文档的生成代码分析和验证比如属性的Name字段长度验证等可以依赖注入最最重要的是可以实现AOP面向切面编程比如可以用于日志记录和性能监控等。 5、 特性的运行时和编译时用法 特性在C#中既具有运行时用途通过反射机制可以在程序运行时动态检查和操作已应用特性的代码元素又具有编译时用途可在编译时影响编译器的行为例如条件编译、代码生成和静态分析从而为开发者提供了在代码的不同阶段编译和运行时对代码进行元数据标记和定制的灵活性和功能。 6、特性的属性访问 通过反射您可以访问已应用于代码元素的特性及其参数。在上篇介绍反射C#反射知识点的文章已经有所介绍。下面演示如何检查并获取类上的自定义特性信息。 Type type typeof(MyAwesomeClass); var attributes  type.GetCustomAttributes(typeof(AuthorInfoAttribute), false); if (attributes.Length 0 attributes[0] is AuthorInfoAttribute authorInfo) {Console.WriteLine($作者: {authorInfo.Author}, 版本号: {authorInfo.Version}); } //上面的代码将打印MyAwesomeClass类的特性展示出特性属性的作者和版本号。结语 本文讲述了C#特性的一些知识点比如自定义特性、内置特性、获取特性内容等这些知识点都是.NET开发应该掌握的。 希望本文提供的C#特性知识对每个.NET开发者都有所帮助对于C#特性的知识点你还知道哪些欢迎留言讨论或者吐槽本文。 参考 1、微软官网 learn.microsoft.com/zh-cn/dotnet/csharp/language-reference/language-specification/attributes 2、AI查询 **推荐阅读 1、.NET无处不在的特性Attribute1-探究 2、.NET无处不在的特性Attribute2-简单自定义 3、面试必备聊聊C#特性Attribute 来源公众号DotNet开发跳槽
http://www.zqtcl.cn/news/897058/

相关文章:

  • 设计学网站网络工程专业毕业生设计
  • 成都网站建设有名的国外优质设计网站
  • seo基础培训教程seo百度关键词优化软件
  • 西安响应式网站青岛网站制作哪里有
  • 政务服务网站建设合肥seo排名扣费
  • 郑州做网站的大公司无锡网站程序
  • 打开网站是空白页面营销型网站建设应该考虑哪些因素
  • 做网站开麻烦吗个人网站备案网站名称
  • 瑞诺国际做外贸网站好吗网站端和移动端分开建设域名一样么
  • 如何网站点击率网站程序开发技术
  • 深圳网站建设售后服务怎样.net网站开发简介
  • 光谷软件园 网站建设中国国家数据统计网
  • wordpress 主页位置seo是什么意思教程
  • 网站开发甘特图网站是别人做的域名自己怎么续费
  • 如何查询网站是否备案江苏省句容建设局网站
  • 中国商业网点建设开发中心官方网站天津中小企业网站制作
  • 莱芜网站建设及优化云开发小程序源码
  • 珠海商城网站学校建网站
  • 自己网站如何做关键词排名网站配色网
  • 做二手物资哪个网站好江苏大汉建设实业集团网站
  • j2ee 建设简单网站Wordpress 导航条样式
  • 创客贴网页设计网站企业局域网
  • 深圳哪里网站制作云南建设网站首页
  • 赤峰做网站哪家好岳阳网站设计u
  • 腾讯云10g数字盘做网站够么网站开元棋牌怎么做app
  • 天津网站建设信息科技有限公司门户网站开发公司排名
  • 优秀策划设计网站jsp mysql开发网站开发
  • 深圳做微信网站建设我爱水煮鱼 wordpress
  • 企业网站推广是不是必要的蓝色网站建设
  • 浙江企业响应式网站建设网站建设 找vx cp5173