【发布时间】:2014-08-17 21:31:05
【问题描述】:
我用 C# 编写了一个测试应用程序,它使用新的 Gmail API 创建草稿邮件。当消息没有附件时,它可以正常工作。
我正在从 IMAP API 迁移,并已将 MailBee.NET 组件与该 API 一起使用。 MailBee.NET 组件包含一个生成 RFC 2822 消息的类,因此我重用了它,并对消息进行 Base64 编码,并分配给“Raw”属性,如下所述:
https://developers.google.com/gmail/api/guides/drafts
MailMessage msg = new MailMessage();
msg.Subject = "test!";
msg.BodyPlainText = "Test content";
msg.Attachments.Add(@"D:\Trace.log", "Trace.log", Guid.NewGuid().ToString(), null, null, NewAttachmentOptions.Inline, MailTransferEncoding.Base64);
Message m = new Message();
m.Raw = Convert.ToBase64String(msg.GetMessageRawData());
Draft d = new Draft();
d.Message = m;
d = gs.Users.Drafts.Create(d, "me").Execute();
当没有添加附件时它工作正常,但添加一个时失败并返回 500 响应:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "backendError",
"message": "Backend Error"
}
],
"code": 500,
"message": "Backend Error"
}
}
有人可以提供一个如何使用 .NET API 执行此操作的示例吗? API 页面上的示例非常简单,并没有提供太多有用信息,文档也不是很好。最好使用 .NET 客户端中包含的 Message / MessagePart / MessagePartBody 类,但是我找不到任何明确的指导或使用示例,所以不知道从哪里开始。
问题:
1) 谁能提供一些使用 .NET 客户端中的类创建带有附件的草稿消息的示例代码?
2) 可以附加多个文件吗?文档自始至终都指的是单个文件,而多部分指南正好指的是两个部分:元数据和附件。
【问题讨论】:
-
“我很可能错误地使用了 Message / MessagePart / MessagePartBody 类。”那么让我们看看你是如何使用它们的。