2016-12-15 11 views
0

Я хочу получить максимальный размер почтового ящика или ограничение квоты. На самом деле я нахожу свободное пространство почтового ящика. Поэтому я нахожу использованное пространство и максимальное пространство, а затем нахожу разницу, чтобы найти свободное пространство.C# EWS Управляемый API: как получить максимальный размер или ограничение квоты для почтового ящика

Я получил код ниже, чтобы найти использованный размер для папки. Я думаю, что я могу перебирать всю папку, чтобы получить полный размер. Но как я могу получить максимальный лимит квоты?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using Microsoft.Exchange.WebServices.Data; 
namespace ConsoleApplication12 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      ExchangeService service = new ExchangeService(); 
      service.Credentials = new WebCredentials("mail", "pass"); 
      service.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx"); 
      ExtendedPropertyDefinition PR_Extended_Message_Size = new ExtendedPropertyDefinition(3592, MapiPropertyType.Long); 
      PropertySet psPropertySet = new PropertySet(BasePropertySet.FirstClassProperties) { PR_Extended_Message_Size }; 
      Folder Inbox = Folder.Bind(service, WellKnownFolderName.Inbox, psPropertySet); 
      long FolderSize = 0; 
      if (Inbox.TryGetProperty(PR_Extended_Message_Size, out FolderSize)) 
      { 
       Console.WriteLine(FolderSize/1024); 
      } 
      Console.ReadKey(); 
     } 
    } 
} 
+0

вы должны иметь возможность запрашивать их так же, как вы запрашиваете extended_message_size. найти константы свойств MAPI для квоты здесь: https://blogs.technet.microsoft.com/outlooking/2013/09/19/mailbox-quota-in-outlook-2010-general-information-and-troubleshooting-tips/ – dlatikay

ответ

0

Вы можете использовать код, который вы имеете, только вместо PR_Extended_Message_Size, запрос для PR_Prohibit_Receive_Quota (шестнадцатеричное значение 0x666A0003), который, по мнению documentation «Предел, где получение почты запрещено (также максимальный размер почтовый ящик) ".

+0

Я пробовал, но это не сработало. Я сделал замену 3592 0x666A https://msdn.microsoft.com/en-us/library/ee203094(v=exchg.80).aspx – Pratik

+1

Но я думаю, что делаю это неправильно. Я пытаюсь получить это свойство только в папке? Я хочу получить это свойство в почтовом ящике. Как я могу это сделать? вы можете помочь с этим. – Pratik