新しい Gmail API を使用して下書きメッセージを作成するテスト アプリケーションを C# で作成しました。メッセージに添付ファイルがない場合は正常に機能します。
私は IMAP API から移行しており、その API で MailBee.NET コンポーネントを使用しています。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) 複数のファイルを添付することはできますか? ドキュメントは全体を通して 1 つのファイルを参照し、マルチパート ガイダンスは正確に 2 つの部分 (メタデータと添付ファイル) を参照します。