Это код, который я придумал
var roleMuted = ctx.Guild.GetRole(role id);
var userId = ctx.Message.MentionedUsers.First().Id;
DiscordMember member = ctx.Guild.GetMemberAsync(user); //exception here
await member.GrantRoleAsync(roleMuted);
Это дает мне исключение
CS0029 Невозможно неявно преобразовать тип "System.Threading.Tasks.Task< DSharpPlus.Entities.DiscordMember>"
в "DSharpPlus.Entities.DiscordMember"
Как вы можете видеть здесь, в этой строке я намерен создать переменную класса DiscordMember
и установить для нее значение DiscordMember
, которое было возвращено ctx.Guild.GetMemberAsync()
, но по какой-то причине Visual Studio
сообщает мне, что DiscordMember
, возвращенный GetMemberAsync()
, не совпадает с DiscordMember
, который я пытаюсь создать, чтобы позже использовать для .GrantRoleAsync()
, что меня сильно смущает.
edit1 ** И я должен добавить, что если я заменю DiscordMember
на var
, чтобы строка была
var member = ctx.Guild.GetMemberAsync(user);
, тогда вместо того, чтобы дать мне исключение, о неудачном преобразовании, я просто не могу позвонить .GrantRoleAsync()
метод для переменной member
(исключение CS1061)