C# में ईमेल संदेश सामग्री निकालें

ईमेल जानकारी प्रदर्शित करें

यह MailMessage एक ईमेल संदेश को दर्शाता है और डेवलपर्स को ईमेल संदेश की प्रॉपर्टीज़ तक पहुंच प्रदान करता है। हेडर जानकारी (जिसपर चर्चा की गई है ईमेल हेडर्स निकालना) को विभिन्न तरीकों से निकाला और संशोधित किया जा सकता है। यह लेख चयनित ईमेल हेडर जानकारी और ईमेल बॉडी को स्क्रीन पर प्रदर्शित करने की व्याख्या करता है। स्क्रीन पर ईमेल जानकारी प्रदर्शित करने के लिए, इन चरणों का पालन करें:

  • का एक इंस्टेंस बनाएं MailMessage क्लास।
  • एक ईमेल संदेश को लोड करें MailMessage इंस्टैंस।
  • ईमेल की सामग्री स्क्रीन पर दिखाएँ।

निम्नलिखित कोड स्निपेट दिखाता है कि कैसे स्क्रीन पर ईमेल जानकारी प्रदर्शित की जाए।


// Create MailMessage instance by loading an Eml file
var message = MailMessage.Load("test.eml", new EmlLoadOptions());

// Gets the sender info, recipient info, Subject, htmlbody and textbody
Console.Write("From:");
Console.WriteLine(message.From);
Console.Write("To:");
Console.WriteLine(message.To);
Console.Write("Subject:");
Console.WriteLine(message.Subject);
Console.WriteLine("HtmlBody:");
Console.WriteLine(message.HtmlBody);
Console.WriteLine("TextBody");
Console.WriteLine(message.Body);

ईमेल हेडर निकालें

ईमेल हेडर इंटरनेट और RFC द्वारा परिभाषित मानक हेडर फ़ील्ड्स का सेट दर्शाता है जो इंटरनेट ईमेल संदेशों में शामिल होते हैं। एक ईमेल हेडर को उपयोग करके निर्दिष्ट किया जा सकता है MailMessage क्लास। सामान्य हेडर टाइप्स इस में परिभाषित होते हैं: HeaderType क्लास। यह एक sealed क्लास है जो सामान्य enumeration की तरह काम करती है। ईमेल से हेडर निकालने के लिए, इन चरणों का पालन करें:

  1. का एक इंस्टेंस बनाएं MailMessage क्लास।
  2. एक ईमेल संदेश को इस इंस्टेंस में लोड करें MailMessage क्लास।
  3. ईमेल संदेश लोड होने के बाद, हम उसकी कच्ची सामग्री प्राप्त करेंगे।

यह MailMessage class स्वयं में From, To, Cc, Subject आदि जैसी प्रॉपर्टी होती हैं। इन प्रॉपर्टी को हेडर से निकाला जा सकता है।

निम्नलिखित कोड स्निपेट दिखाता है कि ईमेल हेडर कैसे निकाले जाएँ।

डिकोडेड हेडर मान प्राप्त करें

निम्नलिखित कोड स्निपेट दिखाता है कि डिकोडेड हेडर मान कैसे प्राप्त किए जाएँ।

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
MailMessage mailMessage = MailMessage.Load(dataDir + "emlWithHeaders.eml");
string decodedValue = mailMessage.Headers.GetDecodedValue("Thread-Topic");
Console.WriteLine(decodedValue);

ईमेल बॉडी निकालें

साधारण टेक्स्ट बॉडी प्राप्त करें

यह बॉडी प्रॉपर्टी संदेश बॉडी का साधारण टेक्स्ट प्रतिनिधित्व लौटाती है।

string plainTextBody = mailMessage.Body;

नोट: यदि संदेश में text/plain MIME भाग मौजूद है, तो प्रॉपर्टी उसका टेक्स्ट डेटा लौटाती है। अन्यथा, यह उससे अलग किया गया टेक्स्ट कंटेंट लौटाती है HtmlBody प्रॉपर्टी बिना HTML मार्कअप के।

HTML बॉडी को साधारण टेक्स्ट के रूप में प्राप्त करें

यह MailMessage क्लास संदेश की HTML बॉडी को साधारण टेक्स्ट के रूप में निकालने की सुविधा प्रदान करती है। MailMessage क्लास एक प्रदान करता है GetHtmlBodyText मेथड जो HTML बॉडी को साधारण टेक्स्ट में लौटाती है। यह मेथड पार्स करती है HtmlBody प्रॉपर्टी और HTML मार्कअप को नजरअंदाज करते हुए विभाजित साधारण टेक्स्ट सामग्री लौटाती है। GetHtmlBodyText मेथड एक बूलियन पैरामीटर लेती है जो बताता है कि बॉडी में URLs होना चाहिए या नहीं। पैरामीटर को true पास करने का मतलब है कि HTML बॉडी में URLs होना चाहिए।

निम्नलिखित कोड स्निपेट दिखाता है GetHtmlBodyText इमेल के HTML बॉडी को साधारण टेक्स्ट के रूप में निकालने की मेथड।

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_Email();

MailMessage mail = MailMessage.Load(dataDir + "HtmlWithUrlSample.eml");

string body_with_url = mail.GetHtmlBodyText(true);// body will contain URL
string body_without_url = mail.GetHtmlBodyText(false);// body will not contain URL

Console.WriteLine("Body with URL: " + body_with_url);
Console.WriteLine("Body without URL: " + body_without_url);

X.500 Exchange पता पहुँचें

यह MailAddress क्लास में है X500Address प्रॉपर्टी जिसे संदेश में मौजूद Exchange X.500 फ़ॉर्मेटेड पते को उजागर करने के लिए बनाया गया है। यह X.500 (Exchange) पता स्ट्रिंग तक केवल-पीढ़ी पहुंच प्रदान करती है MailAddress इंस्टेंस और यदि संदेश मेटाडेटा में X.500 पता शामिल है तो उसे लौटाता है, अन्यथा null या खाली लौटाता है। किसी पार्सिंग की आवश्यकता नहीं — प्रॉपर्टी कच्चा X.500 स्ट्रिंग लौटाती है।

var mailMessage = MailMessage.Load(fileName);
string exaddr = mailMessage.From.X500Address;