Class DynamicCommandAttribute code
- 程序集
- Another-Mirai-Native.Abstractions.dll
将一个方法标记为动态指令处理器。与 CommandAttribute 不同的是, MemberName 指向当前类上的一个字符串属性或字段名, 框架每次调度时通过反射读取该成员的当前值作为指令的匹配模板, 从而实现运行时热修改指令触发词,无需重启插件。
[AttributeUsage(AttributeTargets.Method, AllowMultiple = true)]
public class DynamicCommandAttribute : Attribute
- 继承
-
DynamicCommandAttribute
- 继承成员
构造函数
DynamicCommandAttribute(string, MatchMode, MessageScope) code
将一个方法标记为动态指令处理器。与 CommandAttribute 不同的是, MemberName 指向当前类上的一个字符串属性或字段名, 框架每次调度时通过反射读取该成员的当前值作为指令的匹配模板, 从而实现运行时热修改指令触发词,无需重启插件。
public DynamicCommandAttribute(string memberName, MatchMode matchMode, MessageScope scope = MessageScope.All)
参数
memberNamestring当前类上的字符串属性或字段名称(通常使用 nameof 表达式)。
matchModeMatchMode指令的匹配模式。
scopeMessageScope此指令响应的消息来源范围。默认为 All。
属性
MatchMode code
指令的匹配模式。
public MatchMode MatchMode { get; }
属性值
MemberName code
当前类上的字符串属性或字段名称。框架每次调度时将读取该成员的值作为匹配模板。
public string MemberName { get; }
属性值
Scope code
此指令响应的消息来源范围。默认为 All。
public MessageScope Scope { get; set; }