Maison >développement back-end >C++ >Comment puis-je enregistrer des objets .NET MailMessage sous forme de fichiers .eml ou .msg ?

Comment puis-je enregistrer des objets .NET MailMessage sous forme de fichiers .eml ou .msg ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-08 10:17:41902parcourir

How Can I Save .NET MailMessage Objects as .eml or .msg Files?

Exportation d'objets MailMessage .NET vers des fichiers .eml ou .msg

La classe .NET MailMessage ne dispose pas d'une fonction intégrée pour enregistrer directement les données de courrier électronique sur le disque. Cependant, nous pouvons y parvenir en utilisant des méthodes alternatives.

Exploiter SmtpClient et un répertoire de collecte désigné

La classe SmtpClient propose une solution : diriger les messages électroniques vers un répertoire local au lieu d'un serveur distant. Ceci est accompli en configurant le SmtpClient comme suit :

<code class="language-csharp">SmtpClient client = new SmtpClient("mysmtphost"); // Or use an empty constructor for local saving
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
client.PickupDirectoryLocation = @"C:\somedirectory";
client.Send(message);</code>

Alternativement, ce paramètre peut être défini dans le fichier de configuration de l'application :

<code class="language-xml"><configuration>
  <system.net>
    <mailSettings>
      <smtp deliveryMethod="SpecifiedPickupDirectory">
        <specifiedPickupDirectory pickupDirectoryLocation="C:\somedirectory"/>
      </smtp>
    </mailSettings>
  </system.net>
</configuration></code>

Suite à la commande Send, les fichiers email générés résideront dans le répertoire désigné.

Remarque importante : Pour la création de fichiers locaux, un constructeur vide pour SmtpClient peut simplifier le processus, car la transmission réseau n'est pas requise.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn