0
特定の部屋の予定のためにExchangeサーバーからメール本文を取得しようとしましたが、成功しませんでした。インターネット上ですべてのブログを確認しましたが、何の助けもありませんでした。Outlookの交換サーバー(EWS)から予定の予定の本文を取得する方法、C#
アプローチ
service.GetUserAvailability
(
attendees,
new TimeWindow(twStart, twEnd),
AvailabilityData.FreeBusy
).AttendeesAvailability[0].CalendarEvents;
アプローチB
public class MailItem
{
public string From;
public string[] Recipients;
public string Subject;
public string Body;
}
public static MailItem[] GetUnreadMailFromInbox(ExchangeService service, string address)
{
// Address is the email address for an meeting room
try
{
service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, address);
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new ItemView(128));
ServiceResponseCollection<GetItemResponse> items =
service.BindToItems(findResults.Select(item => item.Id), new PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.From, EmailMessageSchema.ToRecipients));
FindItemsResults<Item> findResults2 = service.FindItems(WellKnownFolderName.Calendar, new ItemView(128));
ServiceResponseCollection<GetItemResponse> items2 =
service.BindToItems(findResults2.Select(item2 => item2.Id), new PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.From, EmailMessageSchema.ToRecipients));
return items.Select(item =>
{
return new MailItem()
{
From = address,
Recipients = ((Microsoft.Exchange.WebServices.Data.EmailAddressCollection)item.Item[EmailMessageSchema.ToRecipients]).Select(recipient => recipient.Address).ToArray(),
Subject = item.Item.Subject,
Body = item.Item.Body.ToString(),
};
}).ToArray();
}
catch (Exception ex)
{
throw ex;
}
}
私は予定の本文の内容を取得するためのソリューションを必要とする:ここで私は詳細を取得するために、Exchangeサーバーに連絡しようとしているコードがあります交換サーバーから。