CoreTweet で複数画像投稿する

CoreTweet で複数画像投稿する場合のサンプルコード。
Accel Tweet の画像投稿部分です。

公式ドキュメント
複数の画像をアップロードしてツイートする方法 · CoreTweet/CoreTweet Wiki

// public ObservableCollection<IRandomAccessStreamWithContentType> TweetImages
 
var result = await Task.WhenAll(
    TweetImages.Select(stream => client.Tokens.Media.UploadAsync(media => stream))
);
 
var parameters = new Dictionary<string, object>();
parameters.Add("status", this.TweetText);
if (result.Length > 0)
{
    parameters.Add("media_ids", result.Select(x => x.MediaId));
}
try
{
    var response = await client.Tokens.Statuses.UpdateAsync(parameters);
 
    if (response.Id > 0)
    {
        // reset
        this.TweetText = string.Empty;
        this.TweetImages.Clear();
    }
}
catch (Exception ex)
{
    Debug.WriteLine("[Cannot tweet] " + ex.Message);
}

カテゴリー: Windows ストア アプリ タグ: , , パーマリンク