Как получить входные данные из команды и использовать их в другом c # discord с dsharpplus

#c# #string #discord #dsharp

#c# #строка #Discord #dsharp

Вопрос:

У меня есть бот Discord для получения информации о турнире. Я хочу, чтобы он принимал входные данные из команды типа !newtourneyinfo INFOHERE, а затем использовать INFOHERE как строку и использовать ее в !tourneyinfo. Я использую DSharpPlus, вот некоторый код, который не работает, но мой лучший вариант как новичка:

     string tourneyinfo;
    [Command("newtourneyinfo")]
    public async Task newtourneyinfo(CommandContext ctx, string newinfo)
    {
        await ctx.RespondAsync($"!tourneyinfo will now output {newinfo}!");
        newinfo = tourneyinfo;
    }

    [Command("tourneyinfo")]
    public async Task tourneyinfo(CommandContext ctx)
    {
        await ctx.RespondAsync($"{tourneyinfo}");
    }
  

Ответ №1:

Проблема здесь, по-видимому, заключается в том, что вы устанавливаете параметр, равный неинициализированной переменной вне метода. При записи newinfo = tourneyinfo , newinfo равно INFOHERE или любому другому переданному аргументу. Между тем, tourneyinfo это пустая строковая переменная. Что вы, вероятно, хотите сделать, так это установить tourneyinfo равным содержимому newinfo .

Другими словами, попробуйте tourneyinfo = newinfo вместо newinfo = tourneyinfo .