brigal1a a écrit :
Bonjour tout le monde,
Je developpe une appli qui doit envoyer des mails en joignant des fichiers en piece jointe. L'envoi de mail doit passer par Lotus Notes (on fait avec ce qu'on a...).
J'ai bien trouve un bout de code qui m'a depanne. J'ai pourtant toujours un leger probleme : je veux pouvoir ecrire un petit message aux destinataires, seulement le corps du mail ne respecte pas les sauts de ligne. Voici mon code C#:
Code :
- // start a Notes session
- Domino.NotesSession session = new Domino.NotesSession();
- session.Initialize(password);
- // get the session user name
- string userName = session.UserName; // something like "CN=Bertrand Rigal/OU=xxx/O=xxx"
- string mailDbName = "names.nsf"; // default name used in my corpo
- // open the mail database in Notes
- Domino.NotesDatabase mailDb = session.GetDatabase("", mailDbName, false);
- if (!mailDb.IsOpen)
- {
- mailDb.Open();
- }
- // set up the new mail document
- Domino.NotesDocument mailDoc = mailDb.CreateDocument();
- mailDoc.AppendItemValue("Form", "Memo" );
- mailDoc.AppendItemValue("Memo", "Memo" );
- mailDoc.AppendItemValue("SendTo", this._to.ToArray());
- mailDoc.AppendItemValue("Recipients", this._to.ToArray());
- mailDoc.AppendItemValue("CopyTo", this._cc.ToArray());
- mailDoc.AppendItemValue("BlindCopyTo", this._bcc.ToArray());
- mailDoc.AppendItemValue("From", userName);
- mailDoc.AppendItemValue("Subject", subject);
- mailDoc.AppendItemValue("DeliveryOption", "High" );
- mailDoc.AppendItemValue("DeliveryReport", "Basic" );
- mailDoc.AppendItemValue("ReturnReceipt", "No" );
- DateTime dt = DateTime.Now;
- mailDoc.AppendItemValue("ComposedDate", dt);
- mailDoc.AppendItemValue("PostedDate", dt);
- mailDoc.AppendItemValue("Body", body);
- mailDoc.SaveMessageOnSend = true;
- // set up the embedded object and attachment and attach it
- if (!attachment.Equals("" ))
- {
- Domino.NotesRichTextItem attachMe = mailDoc.CreateRichTextItem("Attachment" );
- Domino.NotesEmbeddedObject embedObj = attachMe.EmbedObject(Domino.EMBED_TYPE.EMBED_ATTACHMENT, "", attachment, "Attachment" );
- }
- // send the document
- Object dummy = ""; // don't ask me why... it works !
- mailDoc.Send(true, ref (Object)dummy);
|
Lorsque je donne la valeur suivant a body :
string body = "Alert Report - DATE: " + DateTime.Now + " \n-- \nBest regards, \n";
|
le corps du message s'affiche sur une seule ligne (et "\n" ne s'affiche pas).
Est-ce que quelqu'un a la moindre idee ou suggestion ?
Egalement si quelqu'un peut m'expliquer l'utilite de dummy (j'ai recupere du code VB ou cette variable optionnelle n'etait pas presente, j'ai bidouille pour que ca fonctionne en C#, mais je ne sais pas pourquoi ca marche...)
Merci d'avance
Bertrand
|