Telegram API Пост с несколькими картинками

244
11 июня 2022, 02:10

Вот таким способом отправляю пост и все работает отлично:

 public static async void bw_DoWork1()
    {
        botClient = new TelegramBotClient("APIKEY");
        Message[] messages = await botClient.SendMediaGroupAsync(
                       chatId: "@11",
                       inputMedia: new[]
                       {
                         new InputMediaPhoto("https://github.com/TelegramBots/book/raw/master/src/docs/photo-ara.jpg"),
                         new InputMediaPhoto("https://github.com/TelegramBots/book/raw/master/src/docs/photo-ara.jpg"),
                         new InputMediaPhoto("https://github.com/TelegramBots/book/raw/master/src/docs/photo-ara.jpg"),
                         new InputMediaPhoto(new InputMedia("https://github.com/TelegramBots/book/raw/master/src/docs/photo-ara.jpg"))
                         {
                          Caption = "Bot"
                         },
                       }
                   );
    }

Пробую inputMedia передать List: public List Photo = new List();

  public async void bw_DoWork1(Post post)
    {
            botClient = new TelegramBotClient("APIKEY");
            Message[] messages = await botClient.SendMediaGroupAsync(
                           chatId: "@11",
                           inputMedia: (IEnumerable<IAlbumInputMedia>)post.Photo
                       );
    }

Получаю исключение: System.InvalidCastException: "Не удалось привести тип объекта "System.Collections.Generic.List1[System.String]" к типу "System.Collections.Generic.IEnumerable1[Telegram.Bot.Types.IAlbumInputMedia]"."

Пробовал делать public List<IAlbumInputMedia> Photo = new List<IAlbumInputMedia>(); Но тогда не выходит записать в List строку с ссылкой.

Answer 1

У вас List<string> в исключении, а должен быть List<IAlbumInputMedia>.

Попробуйте так для List<string>

inputMedia: post.Photo.Select(x => new InputMediaPhoto(x))
READ ALSO
Заполнить матрицу змейкой

Заполнить матрицу змейкой

Помогите пожалуйста исправить код !

221
Галерея с оверлеем

Галерея с оверлеем

Помогите пожалуйста реализовать галерею, или подскажите готовое решение с готовым функционалом как на скриншоте: http://prntscrcom/vmn588

214
Как оптимизировать код JS

Как оптимизировать код JS

сделал простой калькулятор, который складывает, вычитает, умножает и делитНо как этот код уменьшить? На сколько я понимаю это делается с помощью...

186
JS задача с циклом

JS задача с циклом

Нужно написать цикл, который перебирает числа от 4 до 37 и выполняет следующие действия:

211