web-dev-qa-db-fra.com

Texte brut du corps EWS

J'utilise EWS pour obtenir des e-mails d'échange, mais comment puis-je obtenir du texte brut à partir du corps de l'e-mail, sans html?
Maintenant j'utilise ceci:

EmailMessage item = (EmailMessage)outbox.Items[i];
item.Load();
item.Body.Text
28
JNM

Dans le PropertySet de votre élément, vous devez définir le RequestedBodyType sur BodyType.Text. Voici un exemple:

PropertySet itempropertyset = new PropertySet(BasePropertySet.FirstClassProperties);
itempropertyset.RequestedBodyType = BodyType.Text;
ItemView itemview = new ItemView(1000);
itemview.PropertySet = itempropertyset;

FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, "subject:TODO", itemview);
Item item = findResults.FirstOrDefault();
item.Load(itempropertyset);
Console.WriteLine(item.Body);
65
Elijah W. Gagne

En PowerShell:

    .........    
$message = [Microsoft.Exchange.WebServices.Data.EmailMessage]::Bind($event.MessageData,$itmId)

$PropertySet = New-Object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.BasePropertySet]::FirstClassProperties)
$PropertySet.RequestedBodyType = [Microsoft.Exchange.WebServices.Data.BodyType]::Text
$message.Load($PropertySet)
$bodyText= $message.Body.toString()
8
Liz Barraza

J'ai eu le même problème. Tout ce que vous avez à faire est de définir la propriété RequestedBodyType de l'ensemble de propriétés que vous utilisez.

    PropertySet propSet = new PropertySet(BasePropertySet.IdOnly, EmailMessageSchema.Subject, EmailMessageSchema.Body);
    propSet.RequestedBodyType = BodyType.Text;
    var email = EmailMessage.Bind(service, item.Id, propSet);
7
cookiemonster

La façon la plus courte de le faire est la suivante:

item.Load(new PropertySet(BasePropertySet.IdOnly, ItemSchema.TextBody, EmailMessageSchema.Body));

Cela a l'avantage que vous obtenez à la fois, text-body et html-body.

3
Rodger Svovah

vous pouvez utiliser

service.LoadPropertiesForItems(findResults, itempropertyset);

pour charger les propriétés de tous les éléments

3
Petr