2012-02-20 2 views
0

Дознание, что я могу загрузить вложения в память, и я знаю, что это правильно, я могу напечатать имя файла. Мне нужно преобразовать это приложение в объект изображения, который я позже добавлю в библиотеку изображений sharepoint. Но забудьте о части sharepoint, которую я знаю, как это сделать, я застрял в той части, которая после загрузки вложений, как я конвертирую это в изображения. Я не хочу сохранять изображения на диске, потому что это не то, что я уже загружал их в память.Преобразование привязки к изображению

  foreach (Item item in findResults.Items) 
      { 
       if (item is EmailMessage && item.HasAttachments) 
       { 
        EmailMessage message = EmailMessage.Bind(service, item.Id, new PropertySet(BasePropertySet.IdOnly, ItemSchema.Attachments)); 
        foreach (Attachment attachment in message.Attachments) 
        { 
         if (attachment is FileAttachment) 
         { 
          FileAttachment fileAttachment = attachment as FileAttachment; 

          // Load the file attachment into memory and print out its file name. 
          fileAttachment.Load(); 
          Console.WriteLine("Attachment name: " + fileAttachment.Name); 
          //this is where i would create the image of object but dont know how 
         } 
        } 
       } 

      } 

ответ

0

У вас уже есть объект FileAttachment, и вы даже получаете доступ к одному из его свойств. Вам нужно только сделать следующий шаг и получить доступ не только к Name, но и к Content.

if (attachment is FileAttachment) 
{ 
    FileAttachment fileAttachment = attachment as FileAttachment; 
    fileAttachment.Load(); 
    byte[] fileContent = fileAttachment.Content; 
} 

Это даст вам содержимое на attachemnts, как массив байтов. Я не помню, что хочет получить API Sharepoint, но это либо этот массив байтов, либо что-то, что вы можете легко построить из него.

+0

спасибо, что мне нужно, и да, библиотека изображений sharepoint получает массив байтов. Спасибо за ваш ответ! – rdk1992

+0

Добро пожаловать. Не забудьте отметить ответ «Принято». :) Благодаря. –

+0

Я разобрал html из электронной почты, используя htmlagilitypack api. Он отлично работает, поскольку он извлекает значение src из всех сообщений электронной почты. Проблема в том, что изображения, которые находятся в вложении и отображении в электронной почте, его src анализируются так: cid: companylogo, cid: forumlogo. идея заключается в том, что после загрузки изображения вложения в библиотеку sharepoint я беру этот URL-адрес и заменяю его ссылкой в ​​html. Проблема в том, что я не знаю, какой src заменить. Не знаю почему src = cid: forumlogo, а не имя файла в приложении. Есть идеи? – rdk1992

Смежные вопросы