如何将 EWS 托管 api 上的函数 UploadItemFts(stringfolderId, byte[data]) 迁移到图形函数

问题描述 投票:0回答:1

我正在将 EWS 托管 api 迁移到 Graph。当我使用 EWS 托管 API 时,它具有 UploadItemFts(stringfolderId, byte[data]) 函数。 此功能有助于将邮件(具有所有属性)从邮箱 X 移动到邮箱 Y。

public string UploadItemFts(string folderId, byte[] data)
    {
        try
        {             
            UploadItem itemToUpload = new UploadItem(_service)
            {
                ParentFolderId = folderId,
                Data = data,
                CreateAction = CreateAction.CreateNew
            };

            var uploadItemResult = _service.UploadItem(itemToUpload);
            if (uploadItemResult.Result == ServiceResult.Success)
            {
                return uploadItemResult.Id.UniqueId;
            }
            else
                throw new Exception(uploadItemResult.ErrorMessage);
        }
        catch (ServiceResponseException srex)
        {
            string details = Shared.DumpServiceResponseException(srex);
            XLogger.Debug(this, string.Format("ExportMessageFTS >> ServiceResponseException >> {0}", details));
            throw new Exception(details);
        }
    }

    public UploadItemsResponse UploadItem(UploadItem item)
    {
        //XLogger.Audit(this, AuditCategory.Exchange, CommonUtils.GetLocalIPAddress(), "UploadItem({0})".FormatString(item?.Data));
        UploadItemsRequest request = new UploadItemsRequest(this, ServiceErrorHandling.ReturnErrors);

        request.Items = new UploadItem[] { item };
        
        return request.Execute()[0];
    }

我没有看到任何图形 API 支持执行此操作。你们有什么建议吗? 谢谢。

microsoft-graph-api exchangewebservices microsoft-graph-sdks microsoft-graph-teams microsoft-graph-mail
1个回答
0
投票

Graph 不支持

UploadItems
操作或类似操作。您可以尝试使用原始 MIME 源,但这将丢失所有未映射到 MIME 的特定于 MAPI 的属性。

© www.soinside.com 2019 - 2024. All rights reserved.