【问题标题】:Graph TranslateExchangeIds Unable to read beyond the end of the stream图表 TranslateExchangeIds 无法读取超出流末尾的内容
【发布时间】:2021-12-15 15:35:13
【问题描述】:

我正在使用 Outlook 中的 Graph API。我最近发现,它使用的是 MessageID,它会随着邮件的每次移动而改变。 我发现了这个:

https://docs.microsoft.com/en-us/graph/outlook-immutable-id

现在我正在尝试根据此处的文档更新我的商店:https://docs.microsoft.com/en-us/graph/api/user-translateexchangeids?view=graph-rest-1.0&tabs=http

var client = GraphServiceClientProvider.GetApplicationGraphServiceClient();
var reg = new Regex(@"=*$");
var idsToTranslate = worklist.GroupBy(i => i.MessageId)
  .Select(e => e.Key)
  .Distinct()
  .Select(e => reg.Replace(e.Replace("+", "-").Replace("/", "_"), m => 
    m.Value.Length.ToString()));

var translatedQueryResult = client.Users[fixupPostbox]
  .TranslateExchangeIds(idsToTranslate.ToArray(), ExchangeIdFormat.RestImmutableEntryId, 
     ExchangeIdFormat.RestId)
  .Request()
  .PostAsync()
  .Result;
var translatedResult = translatedQueryResult.ToDictionary(r => r.SourceId, r => r.TargetId);

我想知道为什么它告诉我它“无法读取超出流的末尾。”

【问题讨论】:

    标签: c# microsoft-graph-api


    【解决方案1】:

    解决方案是最小化页面大小,因此我没有要求每个请求 100 个 ID,而是将请求更改为每个请求 25 个 ID。它现在正在工作。

    【讨论】:

      猜你喜欢
      • 2013-06-05
      • 1970-01-01
      • 1970-01-01
      • 2016-08-08
      • 2015-05-11
      • 1970-01-01
      • 2016-05-31
      • 1970-01-01
      • 2012-12-28
      相关资源
      最近更新 更多