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

诗词门户网站世界500强企业排行

诗词门户网站,世界500强企业排行,做咖啡网站,微信商城小程序多少钱前言 Attribute#xff08;特性#xff09;是一种用于为程序元素#xff08;如类、方法、属性等#xff09;提供元数据信息的方法。 特性是一种声明式的信息#xff0c;附加到程序元素上#xff0c;提供额外的数据用于描述和控制这些元素的行为。 在编译和运行时… 前言 Attribute特性是一种用于为程序元素如类、方法、属性等提供元数据信息的方法。 特性是一种声明式的信息附加到程序元素上提供额外的数据用于描述和控制这些元素的行为。 在编译和运行时都可以读取特性提供的信息对程序元素进行分析和操作。 特性通常用于实现以下功能 为代码添加元数据信息特性为元素类、方法、属性等添加额外的元数据信息描述其用途、状态、约束等。 控制编译行为特性可以用于控制编译器对代码的处理如指示编译器生成额外的代码、忽略特定警告等。 在运行时进行反射操作特性可以在运行时通过反射获取并读取用于实现一些动态的行为如配置加载、权限检查等。 C# 本身提供了一些常用的特性如 Serializable、Obsolete、Conditional 等同时我们也可以自定义特性来满足特定的需求。 特性的应用范围非常广泛在实际开发中经常用于标记和控制程序的行为提高代码的可读性和灵活性。 下面看看如何自定义特性 Attribute 并进行应用。 Step By Step 步骤 创建一个 ASP.NET Core Web Api 项目 创建一个 Attribute namespace AttributeSample {// 说明此特性应用在属性上[AttributeUsage(AttributeTargets.Property)]public class TestAttribute: Attribute{public string DisplayName { get; set; }public int DisplayWidth { get; set; }public TestAttribute(string displayName, int displayWidth){DisplayName displayName;DisplayWidth displayWidth;}} }创建一个类应用这个 Attribute public class Points {[Test(站点名称, 100)]public string StationNo { get; set; }[Test(P1数据名称, 100)]public float TD_P1 { get; set; }[Test(P2数据名称, 100)]public float TD_P2 { get; set; } }在控制器中读取 Points 类的属性的特性的值并应用 namespace AttributeSample.Controllers {[ApiController][Route([controller])]public class WeatherForecastController : ControllerBase{private readonly ILoggerWeatherForecastController _logger;public WeatherForecastController(ILoggerWeatherForecastController logger){_logger logger;// 获取 Attribute 内容Type t typeof(Points);foreach (PropertyInfo pi in t.GetProperties()){string propertyName pi.Name;string displayName pi.GetCustomAttributeTestAttribute()?.DisplayName!;int displayWidth pi.GetCustomAttributeTestAttribute().DisplayWidth;// 读取类属性的特性值之后可以进行一些操作这里是打印出来_logger.LogInformation(属性名称 propertyName 显示名称 displayName 显示宽度 displayWidth);}}......}总结 Attrbiute 本身只是 “标签”脱离了通过反射操作它的代码逻辑它什么也不是Attribute 本身就是个标记没什么功能。但是别的工具、框架比如上面的控制器在做事的时候会看相关的 Attribute做相应的处理。这是最主要的作用总的来说就是可以用 Attribute 给代码元素类方法成员变量属性 等等打个标签附加一些信息在调用这些代码的时候利用反射取出这些信息并根据这些信息做些不同的事情Attribute 一定是配合反射使用的。也就说你看不到的外层框架性代码一定有调用反射去寻找这些 Attribute。可以利用 Attribute 更好地解耦业务更好地符合单一职责原则比如一个方法要实现三个业务场景保存数据之后要发送一个邮件和发送一个消息就可以在方法中只做保存数据的业务场景利用 Attribute 来实现发送邮件和消息的业务场景。 我是老杨一个奋斗在一线的资深研发老鸟让我们一起聊聊技术聊聊人生。 都看到这了求个点赞、关注、在看三连呗感谢支持。
http://www.w-s-a.com/news/389539/

相关文章:

  • 网站制作哈尔滨聊天系统源码
  • 网站建设朋友圈素材青白江建设网站
  • 红酒网站设计软件设计文档
  • 如何创建网站目录网站申请支付宝接口
  • 网站做区块链然后往里面投钱品牌设计公司收费标准
  • 2022互联网+创新创业项目呼和浩特企业网站排名优化
  • 电子商务类网站建设山西自助建站系统怎么用
  • odoo做网站网站设置专栏有什么好处
  • 局域网内个人网站建设查询企业的网站有哪些
  • 网站建设属于技术开发吗网页制作团队
  • 做家常菜的网站哪个好哪个网站做图片外链
  • 眼科医院网站设计怎么做6深圳宝安是什么风险等级
  • 网站制作容易吗logo免费生成网站
  • 建设厅官方网站下载专区网络托管公司
  • 祥云平台官方网站网线制作实验原理
  • 把网站做成app的软件下载国外做兼职的网站有哪些
  • 网站建设 海豚弯专业的网站开发服务商
  • 那个网站有免费模板中国家装公司十大排名
  • 中铁建设集团有限公司门户网站余杭区建设规划局网站
  • 天猫网站建设的目标是什么做网站常见问题模板
  • 做php网站需要什么软件天津建设网官方网站
  • 南漳网站开发上海网站推广方法
  • 深圳seo网站大连旅顺房价
  • dede网站 地图什么做有没有做黑市网站
  • 做网站参考文献域名如何做网站
  • 怎么选择网站开发英文网站建设用途
  • 怎样做电子商务网站织梦生成手机网站
  • 公司网站建设选什么服务器网站里怎样添加关键词
  • 深圳建设局网站深业中城绿化项目营销型网站开发流程包括
  • 找销售的网站九江市建设项目服务中心