انتقال ایمیل به یک پوشه در سرور Microsoft Exchange با استفاده از C#

Microsoft Exchange Server یک پلت فرم همکاری پرکاربرد است که ایمیل، مدیریت تماس، تقویم و سایر خدمات را ارائه می دهد. در پست قبلی، نحوه دسترسی و خواندن ایمیل های MS Exchange Server را به صورت برنامه نویسی در یک برنامه دات نت به شما نشان دادیم. با این حال، ممکن است لازم باشد ایمیل ها را از یک پوشه به پوشه دیگر در Exchange Server کپی کنید. برای دستیابی به آن، این مقاله نحوه انتقال ایمیل ها را به یک پوشه خاص در MS Exchange Server در C#.NET نشان می دهد.

C# .NET API برای انتقال ایمیل ها در سرور Microsoft Exchange

برای انتقال ایمیل ها در MS Exchange Server، از Aspose.Email for .NET استفاده می کنیم. API راه های ساده ای برای اتصال و کار با MS Exchange Server ارائه می دهد. می توانید آن را از طریق NuGet یا دانلود DLL آن نصب کنید.

PM> Install-Package Aspose.Email

انتقال ایمیل به یک پوشه در سرور MS Exchange در سی شارپ

در زیر مراحل انتقال ایمیل ها به یک پوشه خاص در MS Exchange Server در سی شارپ آمده است.

نمونه کد زیر نحوه انتقال ایمیل به پوشه ای در MS Exchange Server در C#.NET را نشان می دهد.

try
{
    // با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
    IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

    // برای فهرست کردن اطلاعات پیام‌ها از صندوق ورودی، با روش ListMessages تماس بگیرید
    ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);

    // برای دریافت URI پیام، مجموعه را مرور کنید
    foreach (ExchangeMessageInfo msgInfo in msgCollection)
    {
        if (msgInfo.From.Address.Contains("jhon.vick"))
        {
            String strMessageURI = msgInfo.UniqueUri;

            // در پوشه خاصی کپی کنید
            string newMessageUri = client.CopyItem(strMessageURI, client.MailboxInfo.DeletedItemsUri);
        }
    }                
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

ایمیل جدید را به پوشه ای در MS Exchange Server منتقل کنید

همچنین می توانید یک ایمیل جدید ایجاد شده را به یک پوشه خاص در MS Exchange Server منتقل کنید. مراحل زیر برای انجام این عملیات آورده شده است.

نمونه کد زیر نحوه انتقال یک پیام ایمیل جدید به پوشه ای در MS Exchange Server را نشان می دهد.

try
{
    // با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
    IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

    // ایجاد پیام
    MailMessage message = new MailMessage("from@domain.com", "to@domain.com", "EMAILNET-34997 - " + Guid.NewGuid().ToString(), "EMAILNET-34997 Exchange: Copy a message and get reference to the new Copy item");

    // دریافت URI پیام
    string messageUri = client.AppendMessage(message);

    // کپی پیام
    string newMessageUri = client.CopyItem(messageUri, client.MailboxInfo.OutboxUri);
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

یک مجوز API رایگان دریافت کنید

می توانید برای استفاده از Aspose.Email برای دات نت بدون محدودیت ارزیابی، مجوز موقت رایگان دریافت کنید.

نتیجه

در این مقاله یاد گرفتید که چگونه ایمیل ها را با استفاده از سی شارپ به یک پوشه خاص در Microsoft Exchange Server منتقل کنید. علاوه بر این، نحوه انتقال یک پیام ایمیل جدید را به یک پوشه خاص در Exchange Server مشاهده کرده اید. علاوه بر این، می‌توانید مستندات را برای مطالعه بیشتر درباره Aspose.Email برای دات‌نت کاوش کنید. همچنین، می‌توانید سؤالات خود را از طریق [تالار گفتمان18 ما بپرسید.

همچنین ببینید