Discord Bot [VB.net]检查消息是否有提及的用户

时间:2017-07-06 16:21:34

标签: vb.net bots discord

Case "-move" 'The command 'n shizzle like that ;p
If message.serverpermission.Administrator = true then
Dim user = message.Message.MentionedUsers.FirstOrDefault()
Dim role = message.Server.FindRoles(arg, True).FirstOrDefault()
Await user.AddRoles(role) '!error on this line!

我想检查管理员是否指定了用户,如果没有,他会收到一个错误,例如,没有人在线使用该名称"或者......,你需要指定/提及用户" (如果没有提到任何人,程序会返回错误并且崩溃;

  

System.NullReferenceException; '对象引用未设置为   对象的实例。')

如果你能帮我解决这个问题,谢谢! ^^

1 个答案:

答案 0 :(得分:0)

我在这里找到了解决问题的方法;

If IsNothing(user) Then
Await message.Channel.SendMessage("You need to mention a user.")
else
if isnothing(role) then
Await message.Channel.SendMessage("That role is invalid.")
else
Await message.Channel.SendMessage("Success message here ;P")
end if
end if