C# 计算已接受EWS会议的与会者人数
我正在努力统计接受EWS会议邀请的与会者人数 我能够通过模拟看到组织者的会议,并计算会议所需的与会者人数C# 计算已接受EWS会议的与会者人数,c#,exchange-server,exchangewebservices,C#,Exchange Server,Exchangewebservices,我正在努力统计接受EWS会议邀请的与会者人数 我能够通过模拟看到组织者的会议,并计算会议所需的与会者人数 //Determine User to impersonat string impersonated_email = "user@domain"; service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, impersonated_emai
//Determine User to impersonat
string impersonated_email = "user@domain";
service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, impersonated_email);
//Bind User Calendar
FolderId UserCalendarId = new FolderId(WellKnownFolderName.Calendar, impersonated_email);
CalendarFolder UserCalendar = CalendarFolder.Bind(service, UserCalendarId);
// Initialize values for the start and end times, and the number of appointments to retrieve.
DateTime startDate = DateTime.Now.AddDays(0);
DateTime endDate = startDate.AddDays(1);
// Execute the search in the calendar folder and return the view
CalendarView userCalendar = new CalendarView(startDate, endDate);
userCalendar.PropertySet = new PropertySet(BasePropertySet.FirstClassProperties);
FindItemsResults<Appointment> apt = service.FindAppointments(WellKnownFolderName.Calendar, userCalendar);
foreach (Item item in apt.Items)
{
//Console.WriteLine(item.Subject);
ServiceResponseCollection<GetItemResponse> myColl = service.BindToItems(new[] { new ItemId(item.Id.UniqueId) }, userCalendar.PropertySet);
foreach (GetItemResponse temp in myColl)
{
Appointment app = (Appointment)temp.Item;
Int32 Tn = app.RequiredAttendees.Count-1;
Console.WriteLine(app.Subject + " " +Tn);
}
//确定要模拟的用户
字符串模拟电子邮件=”user@domain";
service.ImpersonatedUserId=新的ImpersonatedUserId(ConnectingIdType.SmtpAddress,模拟电子邮件);
//绑定用户日历
FolderId UserCalendarId=新的FolderId(WellKnownFolderName.Calendar,模拟电子邮件);
CalendarFolder UserCalendar=CalendarFolder.Bind(服务,UserCalendarId);
//初始化开始和结束时间以及要检索的约会数的值。
DateTime startDate=DateTime.Now.AddDays(0);
DateTime endDate=startDate.AddDays(1);
//在日历文件夹中执行搜索并返回视图
CalendarView userCalendar=新日历视图(开始日期、结束日期);
userCalendar.PropertySet=新的PropertySet(BasePropertySet.FirstClassProperties);
FindItemsResults apt=service.findAppoints(WellKnownFolderName.Calendar、userCalendar);
foreach(apt.Items中的项目)
{
//Console.WriteLine(项目主题);
ServiceResponseCollection myColl=service.BindToItems(new[]{new ItemId(item.Id.UniqueId)},userCalendar.PropertySet);
foreach(myColl中的GetItemResponse温度)
{
约会应用=(约会)临时项目;
Int32 Tn=app.requiredAttenders.Count-1;
Console.WriteLine(app.Subject+“”+Tn);
}
我还想看看有多少必要的与会者接受了会议邀请
问候
Xristos您应该能够获得如下响应类型:
Appointment app;
int count = app.RequiredAttendees.Count(x => (x.ResponseType.HasValue && x.ResponseType.Value == MeetingResponseType.Accept));