Команда Discord.NET Kick - PullRequest
       32

Команда Discord.NET Kick

0 голосов
/ 12 декабря 2018

Итак, у меня есть бот, над которым я работаю для проекта по информатике, и моя команда кик не работает.Я пытался закомментировать обновления SQL и строки ReplyAsync, но он просто не пнул пользователя.Я использую неправильный тип данных для пользователя?

public class Kick : ModuleBase<SocketCommandContext>
    {
        OleDbConnection con;
        OleDbDataAdapter da;

        [Command("kick")]
        [RequireUserPermission(GuildPermission.KickMembers)]
        [RequireBotPermission(GuildPermission.KickMembers)]
        public async Task KickUser(IGuildUser user, string reason = "No reason provided")
        {
            con = new OleDbConnection();
            con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=BotDB.accdb";
            da = new OleDbDataAdapter();

            con.Open();
            da.InsertCommand = new OleDbCommand($"UPDATE UserData SET NumKick = NumKick + 1 WHERE UserID = '{Convert.ToString(user.Id)}'");
            da.InsertCommand.ExecuteNonQuery();
            con.Close();

            await ReplyAsync($"{user.Nickname} was kicked from the server for '{reason}'");
            await user.KickAsync(reason);
        }
    }

1 Ответ

0 голосов
/ 18 декабря 2018

Мне удалось это исправить, мне пришлось удалить значение по умолчанию по строковой причине, и в области InsertCommand я забыл указать OleDbConnection после SQL.

...