2009-09-15 4 views
0

J'essaye d'obtenir le type de données (format de corps) de courrier, calendrier e.t.c. Corps.Comment obtenir la valeur "Type de données" du corps d'un élément Lotus Notes à l'aide de .NET?

Obtenir le contenu du corps comme:

String Body = (string)((object[])docInbox.GetItemValue("Body"))[0]; 

ou

String Body = docInbox.GetFirstItem("Body").Text; 

Je l'ai essayé en utilisant:

String bodyFormat = ((object[])docInbox.GetItemValue("Body"))[0].GetType().ToString(); 

Mais dans ce cas, je reçois la valeur "System.String". Mais en réalité c'est: "Rich Text".

Répondre

1

Si vous essayez d'obtenir le type de données Notes de l'élément "Body", vous pouvez utiliser la propriété Type de la classe NotesItem. Par exemple:

... 
dim itemBody as notesItem, nType as integer 
set itemBody = doc.getItem ("Body") 
nType = itemBody.Type 
... 

RichText est 1, le texte est 1280, numérique est 768, etc. Aide Domino Designer a la liste complète des valeurs.

EDIT: Vous trouverez la liste complète des valeurs de type here:

+0

thanx edSchembor. – Preeti

0

Vous obtenez maintenant la valeur via GetItemValue ("Body"). N'y at-il pas une méthode comme

GetItem("Body") 

qui contient cette information?

+0

Il est Lotus Notes, ils ont pas ensemble sensible de propriétés et méthodes comme .NET a dans la plupart des cas :) –

+0

Eh bien, au moins, je dans la bonne direction :-) c'était plus pour montrer que seulement obtenir la valeur ne devenait pas n'importe où. –

0

Vous devez vous chercher un objet dans les objets collection et vous pouvez faire

docInbox.Items[foundBodyItemIndex].Type 

RichText a "1"

2

Essayez:

NotesRichTextItem rtItem = docInbox.GetFirstItem("Body") 

String body = rtItem.GetFormattedText(False, 0) 

or 

String body = rtItem.GetUnformattedText() 
Questions connexes