我正在使用discord.Net库开发C#机器人,并且发现当我在Linux(Debian 4.9.144-3.1)(带有mono)下启动bot时,该机器人没有响应提及他并将命令放在后面时的命令。但是在Windows 10计算机上启动时确实可以工作。如果有人知道为什么以及如何解决此问题
Discord.NET版本:2.0.1 Debian版本:Debian 4.9.144-3.1 Windows 10版本:17763.437
我尝试回退到Discord.NET 2.0.0,但是问题仍然存在
var message = arg as SocketUserMessage;
var context = new SocketCommandContext(DiscordClient, message);
var prefixPos = 0;
if (message.HasStringPrefix("b!", ref prefixPos) ||
message.HasMentionPrefix(DiscordClient.CurrentUser, ref prefixPos))
{
var result = await _commands.ExecuteAsync(context, prefixPos, null);
if (!result.IsSuccess)
Console.WriteLine(
$"[Erreur] : à {DateTime.Now}, une erreur s'est produite avec la commande {context.Message.Content} | Stracktrace : {result.ErrorReason}");
}
我希望机器人能够做出反应
答案 0 :(得分:0)
在Discord.Net文档中,明确提到了Mono is not supported。使用Mono或非Core运行时可能会导致意外行为。改用.NET Core。