You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Discord.Net现有格式的Slash Command中接收用户输入?

在Discord.Net中通过特性添加Slash命令选项接收用户输入

完全可以不用SlashCommandBuilder,直接在你现有的特性式写法里添加命令选项来接收用户输入。只需要给处理方法加上参数,并搭配[SlashCommandOption]特性即可实现需求。

修改后的代码示例:

[SlashCommand("ping", "ping pong")]
public async Task HandlePing(
    [SlashCommandOption(ApplicationCommandOptionType.String, "input_text", "要让机器人回复的文本", isRequired: true)] 
    string input
)
{
    await RespondAsync(input);
}

关键说明:

  • [SlashCommandOption]特性用来定义命令的选项:
    • 第一个参数指定选项类型(这里用ApplicationCommandOptionType.String接收文本输入)
    • 第二个参数是选项的内部名称(用户输入命令时,Discord会自动优化显示,无需手动输入该名称,直接写内容即可)
    • 第三个参数是选项的描述,用于Discord命令菜单的提示
    • isRequired: true表示这个选项是必填项,用户必须输入内容才能执行命令

这样修改后,用户输入/ping dog,机器人就会直接回复dog,完全符合你的需求,同时保留了原有的特性式代码结构。

内容的提问来源于stack exchange,提问作者knoppies999

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 05:15:33