Bir exchange sunucusuna nasıl bağlanabilirim ve paylaşılan bir posta kutusundan (kendi "[email protected]" değil) gelen postaları okuyabilirim. İşte C# EWS Yönetilen API: Paylaşılan posta kutularına nasıl erişilir, ancak kendi gelen kutuma değil
bugüne kadar benim kodudur://Create a service
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
//Autodiscover end point
service.AutodiscoverUrl("[email protected]");
FindFoldersResults folderSearchResults = service.FindFolders(WellKnownFolderName.Inbox, new FolderView(int.MaxValue));
Microsoft.Exchange.WebServices.Data.Folder exchangeMailbox = folderSearchResults.Folders.ToList().Find(
f => f.DisplayName.Equals("NameOfSharedMailboxIwant", StringComparison.CurrentCultureIgnoreCase));
//Set the number of items we can deal with at anyone time.
ItemView itemView = new ItemView(int.MaxValue);
foreach (Microsoft.Exchange.WebServices.Data.Folder folderFromSearchResults in folderSearchResults.Folders)
{
if (folderFromSearchResults.DisplayName.Equals("NameOfSharedMailboxIWant", StringComparison.OrdinalIgnoreCase))
{
Microsoft.Exchange.WebServices.Data.Folder boundFolder =
Microsoft.Exchange.WebServices.Data.Folder.Bind(service, folderFromSearchResults.Id);
SearchFilter unreadSearchFilter =
new SearchFilter.SearchFilterCollection(
LogicalOperator.And, new SearchFilter.IsEqualTo(
EmailMessageSchema.IsRead, false));
//Find the unread messages in the email folder.
FindItemsResults<Item> unreadMessages = boundFolder.FindItems(unreadSearchFilter, itemView);
foreach (EmailMessage message in unreadMessages)
{
message.Load();
Console.WriteLine(message.Subject);
}
}
ben bu çalıştırdığınızda, bunu sırasında "SMTP adresi kendisiyle ilişkilendirilmiş hiçbir posta kutusu yok" diyor atılmış bir istisna olsun:
Microsoft.Exchange.WebServices.Data.Folder exchangeMailbox = folderSearchResults.Folders.ToList().Find(
f => f.DisplayName.Equals("BA", StringComparison.CurrentCultureIgnoreCase));
Neyi özlüyorum? Neredeyse orada olduğumu hissediyorum ve bu EWS Managed API 2.0 belgelerine göre çalışmalı, ancak ben
Eğer bir parçası olan paylaşılan posta kutuları tümünü numaralandırmak için bir yol var mı bakın sonucunu Paget? – Alexandru
Buraya aşağıdaki soruları yolladım: http://stackoverflow.com/questions/38881919/enumerating-shared-mailbox-names-you-are-able-to-access-using-ews-managed-api – Alexandru
Bu Cevap iyi bilinen klasör isimleri için uygun değildir. – Myzifer