如何为C# record类型的属性添加智能感知提示注释?
解决方法
方法1:使用<property>注释标签(C# 9+ 适用,无需修改原有结构)
<param>标签本身仅作用于record的构造函数入参,C# 9及更高版本提供了专门的<property>标签,用来给位置记录自动生成的公共属性添加智能感知注释,修改后的代码如下:
/// <summary> /// 身份核验完成时触发的事件 /// </summary> /// <param name="ConsumerId">消费者的唯一ID(作用于构造函数参数)</param> /// <property name="ConsumerId">消费者的唯一ID(作用于生成的公共属性)</property> public record IdentityVerificationDecidedEvent(String ConsumerId) { }
添加后访问myEvent.ConsumerId时就会正常显示你写的注释内容。
方法2:显式声明属性(全版本兼容)
如果你的编译环境不支持<property>标签,可以将自动生成的位置属性改为手动显式声明,直接给属性添加常规summary注释即可:
/// <summary> /// 身份核验完成时触发的事件 /// </summary> /// <param name="consumerId">消费者的唯一ID(构造函数参数)</param> public record IdentityVerificationDecidedEvent(String consumerId) { /// <summary> /// 消费者的唯一ID /// </summary> public String ConsumerId { get; init; } = consumerId; }
内容的提问来源于stack exchange,提问作者BillRob
相关产品推荐
相关产品推荐

