I am working on migrating a Remote Event Receiver from SP 2013 to SP Online.
Upon adding an item(outlook mail item) in my library, i need to read the contents of file.
Current Code(in On Prem) -
var fileInformation = Microsoft.SharePoint.Client.File.OpenBinaryDirect(clientContext, fileURLofdocset); //getting review document pdf file
// Read received email using Aspose email dll
using (var memory = new MemoryStream())
{
string emailFrom = string.Empty;
byte[] buffer = new byte[1024 * 64];
int nread = 0;
while ((nread = fileInformation.Stream.Read(buffer, 0, buffer.Length)) > 0)
{
memory.Write(buffer, 0, nread);
}
memory.Seek(0, SeekOrigin.Begin);
message = Aspose.Email.Mail.MailMessage.Load(memory);
}
Code modified by me for SP Online -
var file = clientContext.Web.GetFileByServerRelativeUrl(fileURLofdocset);
clientContext.Load(file);
clientContext.ExecuteQuery();
ClientResult streamResult = file.OpenBinaryStream();
clientContext.ExecuteQuery();
Helper.LogInfo("ESSATRemoteEventReceiver->ESSATEmails->GetMailSubject-> streamResult.Value", streamResult.Value.ToString(), clientContext);
using (var memory = new MemoryStream())
{
streamResult.Value.CopyTo(memory);
message = Aspose.Email.Mail.MailMessage.Load(memory);
}
Above code changes doesnt work. Neither does it give any exception/error.
Any suggested are welcome.