کار با پوشه‌ها در سرور Exchange

فهرست تمام پوشه‌ها از سرور

API Aspose.Email امکان اتصال به Exchange Server و فهرست‌کردن تمام پوشه‌ها و زیرپوشه‌ها را فراهم می‌کند. همچنین می‌توانید تمام زیرپوشه‌ها را به‌صورت بازگشتی از هر پوشه دریافت کنید. این API قابلیت فهرست‌گذاری پوشه‌ها با صفحه‌بندی از کلاینت Exchange با استفاده از Exchange Web Service (EWS) را نیز دارد. این مقاله نشان می‌دهد چگونه تمام زیرپوشه‌ها را از سرور Exchange دریافت کرده و پوشه‌ها را با صفحه‌بندی دریافت کنید.

قطعه کد زیر نشان می‌دهد چگونه پوشه‌ها را از سرور Exchange فهرست کنید.

دریافت اطلاعات نوع پوشه با استفاده از EWS

این ExchangeFolderType enumerator ارائه‌شده توسط ExchangeFolderInfo کلاسی که می‌تواند اطلاعاتی درباره نوع پوشه دریافت کند. همان‌طور که در نمونه کد زیر نشان داده شده است.

فهرست‌گذاری پوشه‌ها با پشتیبانی از صفحه‌بندی با استفاده از EWS

کد نمونه زیر نشان می‌دهد چگونه از پشتیبانی صفحه‌بندی با EWS استفاده کنید.

دسترسی به پوشه‌ها یا زیرپوشه‌های سفارشی صندوق‌پستی

IEWSClient به توسعه‌دهندگان امکان می‌دهد به هر پوشه یا زیرپوشهٔ سفارشی از صندوق‌پستی دسترسی پیدا کنند.  FolderExists() متد IEWSClient URI یک پوشه/زیرپوشهٔ سفارشی مشخص را برمی‌گرداند که سپس می‌توان برای دسترسی به پوشه هدف از آن استفاده کرد. در مثال زیر، یک پوشهٔ سفارشی به نام "TestInbox" که زیر پوشهٔ INBOX ایجاد شده است، دسترسی پیدا می‌شود و تمام پیام‌های آن پوشه نمایش داده می‌شود. برای انجام این کار، مراحل زیر اجرا می‌شوند:

  1. مقداردهی اولیه به IEWSClient شیء با ارائه اعتبارهای معتبر.
  2. به صندوق‌پستی پیش‌فرض دسترسی پیدا کنید.
  3. به پوشهٔ والد دسترسی پیدا کنید، که در این مثال INBOX است. این پوشهٔ والد می‌تواند خود یک پوشهٔ سفارشی نیز باشد.
  4. استفاده کنید FolderExists() روشی برای جستجو در زیرپوشهٔ سفارشی مشخص شده، برای مثال "TestInbox". این روش URI مربوط به "TestInbox" را برمی‌گرداند.
  5. از این URI برای دسترسی به تمام پیام‌ها در آن پوشهٔ سفارشی استفاده کنید.

قطعه کد زیر نشان می‌دهد چگونه با EWS به پوشه‌ها یا زیرپوشه‌های سفارشی صندوق‌پستی دسترسی پیدا کنید.

فهرست‌بندی پوشه‌های عمومی

سرور Microsoft Exchange به کاربران اجازه می‌دهد پوشه‌های عمومی ایجاد کنند و پیام‌ها را در آن‌ها ارسال کنند. برای انجام این کار از طریق برنامهٔ خود، از EWSClient کلاسی برای اتصال به سرور Exchange و خواندن و دانلود پیام‌ها و پست‌ها از پوشه‌های عمومی. کد نمونه زیر نشان می‌دهد چگونه تمام پوشه‌های عمومی و زیرپوشه‌های آن‌ها را بخوانید و پیام‌های موجود در این پوشه‌ها را فهرست و دانلود کنید. این مثال تنها با Microsoft Exchange Server 2007 یا بالاتر کار می‌کند زیرا تنها این نسخه‌ها از EWS پشتیبانی می‌کنند.

همگام‌سازی موارد پوشه

APIهای Aspose.Email IEWSClient ویژگی همگام‌سازی یک پوشه Exchange برای محتویات آن را فراهم می‌کند. SyncFolder متدی که توسط IEWSClient کلاسی که می‌تواند برای همگام‌سازی اطلاعات پوشه روی یک پوشهٔ مشخص استفاده شود. کد نمونه زیر نشان می‌دهد چگونه اطلاعات پوشهٔ Exchange را همگام‌سازی کنید.

دریافت مجوزها برای پوشه‌های Exchange

کاربران دسترسی‌هایی به پوشه‌های عمومی در سرور Exchange اختصاص داده می‌شود که سطح دسترسی آن‌ها به این پوشه‌ها را محدود/مشخص می‌کند. کلاس ExchangeFolderPermission مجموعه‌ای از ویژگی‌های دسترسی برای پوشه‌های Exchange فراهم می‌کند مانند سطح دسترسی، توانایی ایجاد آیتم، حذف آیتم و انجام سایر عملیات طبق ویژگی‌های دسترسی. می‌توان دسترسی‌ها را با استفاده از GetFolderPermissions() متد IEWSClient. این مقاله نشان می‌دهد چگونه مجوزهای اعمال‌شده به یک پوشه عمومی را برای تمام کاربرانی که به پوشه‌های به‌اشتراک‌گذاری شده دسترسی دارند، بازیابی کنید.

برای انجام این کار:

  1. مقداردهی اولیه به IEWSClient.
  2. از ListPublicFolders برای دریافت فهرستی از تمام پوشه‌های عمومی
  3. دریافت سطوح دسترسی مرتبط با یک پوشه با استفاده از GetFolderPermissions() متد

قطعه کد زیر نشان می‌دهد چگونه از IEWSClient کلاسی برای بازیابی مجوزهای اعمال‌شده به یک پوشه.

ایجاد پوشه‌ها و زیرپوشه‌ها

API Aspose.Email قابلیت ایجاد پوشه‌ها در یک صندوق‌نامه Exchange را فراهم می‌کند. The CreateFolder متد IEWSClient می‌تواند برای این منظور استفاده شود. برای ایجاد یک پوشه در صندوق‌نامه سرور Exchange، می‌توان از مراحل زیر استفاده کرد.

  1. یک نمونه از IEWSClient.
  2. تنظیم set_UseSlashAsFolderSeparator ویژگی به‌عنوان مورد نیاز. اگر به true تنظیم شود، برنامه "Slash" را به عنوان جداکنندهٔ پوشه در نظر می‌گیرد و زیرپوشه پس از اسلش ایجاد می‌شود.
  3. از CreateFolder متد برای ایجاد پوشه.

قطعه کد زیر نشان می‌دهد چگونه پوشه‌ها و زیرپوشه‌ها ایجاد کنید.

پشتیبان‌گیری از پوشه‌های Exchange به PST

اغلب کاربران ممکن است بخواهند از تمام یا برخی از پوشه‌های صندوق‌نامه یک نسخهٔ پشتیبان تهیه کنند. Aspose.Email قابلیت تهیه نسخهٔ پشتیبان از تمام یا پوشه‌های مشخص صندوق‌نامه Exchange را به یک فایل PST فراهم می‌کند. برای تهیهٔ نسخهٔ پشتیبان از پوشه‌های سرور Exchange، می‌توان مراحل زیر را دنبال کرد.

  1. یک نمونه از IEWSClient.
  2. اطلاعات مورد نیاز پوشه را به ExchangeFolderInfoCollection
  3. استفاده کنید IEWSClient->Backup متد برای صادر کردن محتویات پوشه به PST

قطعه کد زیر نشان می‌دهد چگونه پوشه‌های Exchange را به PST پشتیبان‌گیری کنید.