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

C# CallerMemberName特性

当你在一个方法运用了CallerMemberName特性,编译器会自动将调用该方法的方法或属性的名称作为该参数的默认值,可应用于MVVM框架。

代码:

using System.ComponentModel;
using System.Runtime.CompilerServices;public class Person : INotifyPropertyChanged
{private string name;public event PropertyChangedEventHandler PropertyChanged;// 使用 [CallerMemberName] 来避免硬编码属性名protected void OnPropertyChanged([CallerMemberName] string propertyName = null){PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));}public string Name{get => name;set{if (name != value){name = value;OnPropertyChanged(); // 不需要传递参数,[CallerMemberName] 自动提供}}}
}

相关文章:

  • 功能管理:基于 ABP 的 Feature Management 实现动态开关
  • docker中,容器时间和宿机主机时间不一致问题
  • SpringBoot项目打jar包自定义名称完全指南
  • 02 C语言程序设计之导言
  • 嵌入式学习笔记 - freeRTOS任务栈在初始化以及任务切换时的压栈出栈过程分析
  • OpenEMMA: 打破Waymo闭源,首个开源端到端多模态模型
  • [手写系列]从0到1开发并上线Edge浏览器插件
  • 硬件工程师笔记——555定时器应用Multisim电路仿真实验汇总
  • 【使用】【经验】docker 清理未使用的镜像的命令
  • Ubuntu安装Docker命令清单(以20.04为例)
  • Docker容器使用手册
  • 运维 vm 虚拟机ip设置
  • 解决MyBatis参数绑定中参数名不一致导致的错误问题
  • 数据库OCP专业认证培训
  • 我的技术笔记
  • ULVAC DC-10-4P 400V input 10kW DC Pulse power supply 爱发科直流电源
  • 云原生时代 Kafka 深度实践:05性能调优与场景实战
  • Go 为何天生适合云原生?
  • 深入解析 Flask 命令行工具与 flask run命令的使用
  • Flask 应用的生产环境部署指南
  • 卖域名做非法网站/关键词有哪些
  • 如何编辑网站后台/atp最新排名
  • 500人在线网站建设配置/搜索广告是什么
  • 贵阳网站建设电话/输入关键词搜索
  • 厚街镇仿做网站/长沙优化网站推广
  • 做教学的视频网站有哪些问题/网站开发的公司