コード例 #1
0
        private async Task <Dictionary <Message, List <FileAttachment> > > GetFileAttachments(GraphServiceClient graphClient, IMailFolderMessagesCollectionPage messages)
        {
            var msgToAttachmentsDict = new Dictionary <Message, List <FileAttachment> >();

            for (int i = 0; i < messages.Count; i++)
            {
                if (messages[i].HasAttachments == true)
                {
                    var attachmentsList = new List <FileAttachment>();
                    IMessageAttachmentsCollectionPage attachmentsPage = await graphClient.Users["*****@*****.**"]
                                                                        .MailFolders
                                                                        [config.ArchiverId]
                                                                        .Messages[messages[i].Id]
                                                                        .Attachments
                                                                        .Request()
                                                                        .GetAsync();

                    for (int j = 0; j < attachmentsPage.Count; j++)
                    {
                        if (attachmentsPage[j].ODataType == "#microsoft.graph.fileAttachment")
                        {
                            var fileAttachment = attachmentsPage[j] as FileAttachment;
                            attachmentsList.Add(fileAttachment);
                        }
                    }
                    msgToAttachmentsDict[messages[i]] = attachmentsList;
                }
            }
            return(msgToAttachmentsDict);
        }
コード例 #2
0
 public MailViewModel(Message message)
 {
     Subject          = Cleanup(message.Subject);
     FromEmailAddress = message?.From?.EmailAddress?.Address;
     Body             = Cleanup(message.BodyPreview);
     HasAttachments   = message.HasAttachments ?? message.HasAttachments.Value;
     Attachments      = message.Attachments;
 }
コード例 #3
0
        public async Task <List <Attachment> > GetInboxMessageAttachments(string userid, string messageid)
        {
            IMessageAttachmentsCollectionPage attachments = await _graphClient.Users[userid].MailFolders.Inbox.Messages[messageid].Attachments.Request().GetAsync();

            return(attachments.ToList());
        }