1

我正在尝试访问电子邮件中的文件附件并将附件作为 blob 上传到 Azure 表存储。

using Microsoft.Exchange.WebServices.Data
public void SendEmail(EmailMessage emailMessage)
        {Stream stream = null;
            foreach (Attachment attachment in emailMessage.Attachments)
            {
                if (attachment is FileAttachment)
                {
                    FileAttachment file = (FileAttachment)attachment;
                    file.Load(stream);
                    emailAttachment.UploadEmailAttachment(attachmentFileName, stream);// This will upload to the table storage
                }
            }

        }

当我加载附件时,我收到一条错误消息,提示“请求模式验证失败:缺少所需的属性 'Id'。”。关于这个的任何想法

4

1 回答 1

1

据我了解,您正在寻找一种将附件内容加载到流中的方法,您可以进一步将其作为 blob 上传。

如果是这种情况,我建议您将文件附件的内容写入 MemoryStream :

var stream = new System.IO.MemoryStream(fileAttachment.Content);

如果您想将内容读取为字符串,您也可以这样做:

var reader = new System.IO.StreamReader(stream, UTF8Encoding.UTF8);
var text = reader.ReadToEnd();

希望这可以帮助!

于 2013-07-30T11:17:28.723 回答