Class RequireUserAttribute
要求调用命令的用户具有指定的 ID。
[AttributeUsage(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple = true)]
public class RequireUserAttribute : PreconditionAttribute
- Inheritance
-
RequireUserAttribute
- Inherited Members
Examples
以下代码示例将 admin 命令组限制为仅允许用户 ID 为 2810246202 的用户可以调用。
[RequireUser(2810246202)]
[Group("admin")]
public class AdminModule : ModuleBase
{
[Command("exit")]
public async Task ExitAsync()
{
await ReplyTextAsync("Goodbye!");
Environment.Exit(0);
}
}
Constructors
RequireUserAttribute(ulong)
初始化一个 RequireUserAttribute 类的新实例。
public RequireUserAttribute(ulong userId)
Parameters
userId
ulong所要求调用命令的用户应具有的 ID。
Properties
ErrorMessage
获取或设置错误消息。
public override string? ErrorMessage { get; set; }
Property Value
Methods
CheckPermissionsAsync(ICommandContext, CommandInfo, IServiceProvider)
检查命令执行上下文中的此命令是否满足此先决条件。
public override Task<PreconditionResult> CheckPermissionsAsync(ICommandContext context, CommandInfo command, IServiceProvider services)
Parameters
context
ICommandContext命令执行上下文。
command
CommandInfo要执行的命令。
services
IServiceProvider依赖注入服务容器。
Returns
- Task<PreconditionResult>
一个表示异步检查操作的任务。任务的结果包含先决条件的结果。