GetGuild() возвращает null, DISCORD.NET

Делал бота на Discord.NET, и столкнулся с такой проблемной:

SocketGuild guild = client.GetGuild(id); Почему то, guild всегда null, я уверен что id верный, пробовал вместо SocketGuild получать IGuild, но проблема все таже.

Полный код:

static void Main(string[] args)
            => new Program().MainAsync().GetAwaiter().GetResult();

        private async Task MainAsync()
        {          
            client.Log += Log;
            client.MessageReceived += CommandsHandler;

            var token = "token";

            await client.LoginAsync(TokenType.Bot, token);
            await client.StartAsync();
            SocketGuild guild =  client.GetGuild(id); //проблемная строка
            
            Console.ReadLine();         

        } ```

Ответы (1 шт):

Автор решения: Povst

StartAsync() - это лишь запуск процесса подключения, который длится еще пару секунд, после чего (когда бот будет в сети), вы уже можете просить информацию о гильдии. Чтоб знать, когда бот в сети - есть событие Ready, вот подпишитесь на него, и в нем уже просити что надо (например client.Ready += () => { var guild = client.GetGuild(id); return Task.CompletedTask; }

Спасибо за ответ @EvgeniyZ

→ Ссылка