2

Graph API Send Email document states that I can include a file attachment in the same sendMail action call. Would someone be able to provide an example code of how this can be achieved using me/sendmail with attachment from the file generated which content is stored in the memorystream?

user1612125
  • 71
  • 1
  • 7

1 Answers1

5

One option is to use the Microsoft Graph .NET SDK and I found this sample code in another Stack Overflow answer.

// Create the message with attachment.
byte[] contentBytes = System.IO.File.ReadAllBytes(@"C:\test\test.png");
string contentType = "image/png";
MessageAttachmentsCollectionPage attachments = new MessageAttachmentsCollectionPage();
attachments.Add(new FileAttachment
{
    ODataType = "#microsoft.graph.fileAttachment",
    ContentBytes = contentBytes,
    ContentType = contentType,
    ContentId = "testing",
    Name = "testing.png"
});
Message email = new Message
{
    Body = new ItemBody
    {
        Content = Resource.Prop_Body + guid,
        ContentType = BodyType.Text,
    },
    Subject = Resource.Prop_Subject + guid.Substring(0, 8),
    ToRecipients = recipients,
    Attachments = attachments
};

// Send the message.
await graphClient.Me.SendMail(email, true).Request().PostAsync();
David
  • 2,412
  • 1
  • 14
  • 22