Interface ICommandInfo
- Namespace
- HeyBox.Interactions
- Assembly
- HeyBox.Net.Interactions.dll
表示可被执行的命令信息对象。
public interface ICommandInfo
Properties
Attributes
获取此命令的特性集合。
IReadOnlyCollection<Attribute> Attributes { get; }
Property Value
CommandService
获取底层命令服务。
InteractionService CommandService { get; }
Property Value
MethodName
获取命令处理方法的名称。
string MethodName { get; }
Property Value
Module
获取该方法所属的模块。
ModuleInfo Module { get; }
Property Value
Name
获取命令的名称。
string Name { get; }
Property Value
Parameters
获取此命令的参数集合。
IReadOnlyCollection<IParameterInfo> Parameters { get; }
Property Value
Preconditions
获取此命令的先决条件集合。
IReadOnlyCollection<PreconditionAttribute> Preconditions { get; }
Property Value
RunMode
获取此命令的运行模式。
RunMode RunMode { get; }
Property Value
TreatNameAsRegex
获取命令名称是否应被视为正则表达式。
bool TreatNameAsRegex { get; }
Property Value
Methods
CheckPreconditionsAsync(IInteractionContext, IServiceProvider)
检查执行上下文是否满足命令的先决条件要求。
Task<PreconditionResult> CheckPreconditionsAsync(IInteractionContext context, IServiceProvider services)
Parameters
context
IInteractionContextservices
IServiceProvider
Returns
ExecuteAsync(IInteractionContext, IServiceProvider)
使用提供的上下文执行命令。
Task<IResult> ExecuteAsync(IInteractionContext context, IServiceProvider services)
Parameters
context
IInteractionContext执行上下文。
services
IServiceProvider用于创建模块实例的依赖项。