C# 循环浏览日历中的所有约会
是否可以循环浏览主日历中的每个约会并检索其所有详细信息,如主题ect?尝试阅读-> 您需要创建一个搜索过滤器C# 循环浏览日历中的所有约会,c#,exchangewebservices,C#,Exchangewebservices,是否可以循环浏览主日历中的每个约会并检索其所有详细信息,如主题ect?尝试阅读-> 您需要创建一个搜索过滤器 searchFilter.SearchFilterCollection searchFilter = new SearchFilter.SearchFilterCollection(); searchFilter.Add(new SearchFilter.IsGreaterThanOrEqualTo(AppointmentSchema.Start, new DateTime(1999,
searchFilter.SearchFilterCollection searchFilter = new SearchFilter.SearchFilterCollection();
searchFilter.Add(new SearchFilter.IsGreaterThanOrEqualTo(AppointmentSchema.Start, new DateTime(1999, 1, 1)));
创建项目视图
ItemView view = new ItemView(20);
view.PropertySet = new PropertySet(BasePropertySet.IdOnly, AppointmentSchema.Subject, AppointmentSchema.Start, AppointmentSchema.AppointmentType);
发送请求
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Calendar, searchFilter, view);
尝试阅读->
您需要创建一个搜索过滤器
searchFilter.SearchFilterCollection searchFilter = new SearchFilter.SearchFilterCollection();
searchFilter.Add(new SearchFilter.IsGreaterThanOrEqualTo(AppointmentSchema.Start, new DateTime(1999, 1, 1)));
创建项目视图
ItemView view = new ItemView(20);
view.PropertySet = new PropertySet(BasePropertySet.IdOnly, AppointmentSchema.Subject, AppointmentSchema.Start, AppointmentSchema.AppointmentType);
发送请求
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Calendar, searchFilter, view);
尝试阅读->
您需要创建一个搜索过滤器
searchFilter.SearchFilterCollection searchFilter = new SearchFilter.SearchFilterCollection();
searchFilter.Add(new SearchFilter.IsGreaterThanOrEqualTo(AppointmentSchema.Start, new DateTime(1999, 1, 1)));
创建项目视图
ItemView view = new ItemView(20);
view.PropertySet = new PropertySet(BasePropertySet.IdOnly, AppointmentSchema.Subject, AppointmentSchema.Start, AppointmentSchema.AppointmentType);
发送请求
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Calendar, searchFilter, view);
尝试阅读->
您需要创建一个搜索过滤器
searchFilter.SearchFilterCollection searchFilter = new SearchFilter.SearchFilterCollection();
searchFilter.Add(new SearchFilter.IsGreaterThanOrEqualTo(AppointmentSchema.Start, new DateTime(1999, 1, 1)));
创建项目视图
ItemView view = new ItemView(20);
view.PropertySet = new PropertySet(BasePropertySet.IdOnly, AppointmentSchema.Subject, AppointmentSchema.Start, AppointmentSchema.AppointmentType);
发送请求
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Calendar, searchFilter, view);
是的,这是可能的。我几天前才设法做到这一点。下面是我如何做到这一点的代码。首先,您必须获取日历文件夹,然后在该文件夹中的日历上创建一组约会的视图。然后,您可以在文件夹中搜索所有约会并循环浏览
Appointment existingAppointment = null;
DateTime startDate = (DateTime.Now).AddDays(-30);
DateTime endDate = (DateTime.Now).AddDays(60);
const int NUM_APPTS = 9999999;
Mailbox mb = new Mailbox("youremail@email.com");
FolderId calendarsFolder = new FolderId(WellKnownFolderName.Calendar, mb);
CalendarFolder calendarFolder = CalendarFolder.Bind(service, calendarsFolder);
// Set the calendar view as 30 days before dateTimeNow and 60 days after
CalendarView calendarView = new CalendarView(startDate, endDate, NUM_APPTS);
// Set the appointment properties for the calendar view search
PropertySet prop = new PropertySet(BasePropertySet.FirstClassProperties, extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
AppointmentSchema.Subject,
};
calendarView.PropertySet = prop;
// Search for all appointments in the main calendar folder
FindItemsResults<Appointment> findAppointmentsResults = calendarFolder.FindAppointments(calendarView);
// Loop through all the appointments in view
foreach (Appointment appointment in findAppointmentsResults)
{
// Do stuff with the appointment
}
Appointment existingAppointment=null;
DateTime startDate=(DateTime.Now).AddDays(-30);
DateTime endDate=(DateTime.Now).AddDays(60);
常数int NUM_APPTS=9999999;
邮箱mb=新邮箱(“youremail@email.com");
FolderId calendarsFolder=新的FolderId(WellKnownFolderName.Calendar,mb);
CalendarFolder CalendarFolder=CalendarFolder.Bind(服务,calendarsFolder);
//将日历视图设置为dateTimeNow之前30天,dateTimeNow之后60天
CalendarView CalendarView=新的CalendarView(开始日期、结束日期、数值应用);
//设置日历视图搜索的约会属性
PropertySet prop=新的PropertySet(BasePropertySet.FirstClassProperties,extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
任命模式。主题,
};
calendarView.PropertySet=prop;
//在主日历文件夹中搜索所有约会
FindItemsResults FindApointsResults=calendarFolder.FindApoints(calendarView);
//循环查看视图中的所有约会
foreach(FindApointsResults中的约会)
{
//安排约会
}
是的,这是可能的。我几天前才设法做到这一点。下面是我如何做到这一点的代码。首先,您必须获取日历文件夹,然后在该文件夹中的日历上创建一组约会的视图。然后,您可以在文件夹中搜索所有约会并循环浏览
Appointment existingAppointment = null;
DateTime startDate = (DateTime.Now).AddDays(-30);
DateTime endDate = (DateTime.Now).AddDays(60);
const int NUM_APPTS = 9999999;
Mailbox mb = new Mailbox("youremail@email.com");
FolderId calendarsFolder = new FolderId(WellKnownFolderName.Calendar, mb);
CalendarFolder calendarFolder = CalendarFolder.Bind(service, calendarsFolder);
// Set the calendar view as 30 days before dateTimeNow and 60 days after
CalendarView calendarView = new CalendarView(startDate, endDate, NUM_APPTS);
// Set the appointment properties for the calendar view search
PropertySet prop = new PropertySet(BasePropertySet.FirstClassProperties, extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
AppointmentSchema.Subject,
};
calendarView.PropertySet = prop;
// Search for all appointments in the main calendar folder
FindItemsResults<Appointment> findAppointmentsResults = calendarFolder.FindAppointments(calendarView);
// Loop through all the appointments in view
foreach (Appointment appointment in findAppointmentsResults)
{
// Do stuff with the appointment
}
Appointment existingAppointment=null;
DateTime startDate=(DateTime.Now).AddDays(-30);
DateTime endDate=(DateTime.Now).AddDays(60);
常数int NUM_APPTS=9999999;
邮箱mb=新邮箱(“youremail@email.com");
FolderId calendarsFolder=新的FolderId(WellKnownFolderName.Calendar,mb);
CalendarFolder CalendarFolder=CalendarFolder.Bind(服务,calendarsFolder);
//将日历视图设置为dateTimeNow之前30天,dateTimeNow之后60天
CalendarView CalendarView=新的CalendarView(开始日期、结束日期、数值应用);
//设置日历视图搜索的约会属性
PropertySet prop=新的PropertySet(BasePropertySet.FirstClassProperties,extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
任命模式。主题,
};
calendarView.PropertySet=prop;
//在主日历文件夹中搜索所有约会
FindItemsResults FindApointsResults=calendarFolder.FindApoints(calendarView);
//循环查看视图中的所有约会
foreach(FindApointsResults中的约会)
{
//安排约会
}
是的,这是可能的。我几天前才设法做到这一点。下面是我如何做到这一点的代码。首先,您必须获取日历文件夹,然后在该文件夹中的日历上创建一组约会的视图。然后,您可以在文件夹中搜索所有约会并循环浏览
Appointment existingAppointment = null;
DateTime startDate = (DateTime.Now).AddDays(-30);
DateTime endDate = (DateTime.Now).AddDays(60);
const int NUM_APPTS = 9999999;
Mailbox mb = new Mailbox("youremail@email.com");
FolderId calendarsFolder = new FolderId(WellKnownFolderName.Calendar, mb);
CalendarFolder calendarFolder = CalendarFolder.Bind(service, calendarsFolder);
// Set the calendar view as 30 days before dateTimeNow and 60 days after
CalendarView calendarView = new CalendarView(startDate, endDate, NUM_APPTS);
// Set the appointment properties for the calendar view search
PropertySet prop = new PropertySet(BasePropertySet.FirstClassProperties, extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
AppointmentSchema.Subject,
};
calendarView.PropertySet = prop;
// Search for all appointments in the main calendar folder
FindItemsResults<Appointment> findAppointmentsResults = calendarFolder.FindAppointments(calendarView);
// Loop through all the appointments in view
foreach (Appointment appointment in findAppointmentsResults)
{
// Do stuff with the appointment
}
Appointment existingAppointment=null;
DateTime startDate=(DateTime.Now).AddDays(-30);
DateTime endDate=(DateTime.Now).AddDays(60);
常数int NUM_APPTS=9999999;
邮箱mb=新邮箱(“youremail@email.com");
FolderId calendarsFolder=新的FolderId(WellKnownFolderName.Calendar,mb);
CalendarFolder CalendarFolder=CalendarFolder.Bind(服务,calendarsFolder);
//将日历视图设置为dateTimeNow之前30天,dateTimeNow之后60天
CalendarView CalendarView=新的CalendarView(开始日期、结束日期、数值应用);
//设置日历视图搜索的约会属性
PropertySet prop=新的PropertySet(BasePropertySet.FirstClassProperties,extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
任命模式。主题,
};
calendarView.PropertySet=prop;
//在主日历文件夹中搜索所有约会
FindItemsResults FindApointsResults=calendarFolder.FindApoints(calendarView);
//循环查看视图中的所有约会
foreach(FindApointsResults中的约会)
{
//安排约会
}
是的,这是可能的。我几天前才设法做到这一点。下面是我如何做到这一点的代码。首先,您必须获取日历文件夹,然后在该文件夹中的日历上创建一组约会的视图。然后,您可以在文件夹中搜索所有约会并循环浏览
Appointment existingAppointment = null;
DateTime startDate = (DateTime.Now).AddDays(-30);
DateTime endDate = (DateTime.Now).AddDays(60);
const int NUM_APPTS = 9999999;
Mailbox mb = new Mailbox("youremail@email.com");
FolderId calendarsFolder = new FolderId(WellKnownFolderName.Calendar, mb);
CalendarFolder calendarFolder = CalendarFolder.Bind(service, calendarsFolder);
// Set the calendar view as 30 days before dateTimeNow and 60 days after
CalendarView calendarView = new CalendarView(startDate, endDate, NUM_APPTS);
// Set the appointment properties for the calendar view search
PropertySet prop = new PropertySet(BasePropertySet.FirstClassProperties, extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
ItemSchema.Subject,
AppointmentSchema.Subject,
};
calendarView.PropertySet = prop;
// Search for all appointments in the main calendar folder
FindItemsResults<Appointment> findAppointmentsResults = calendarFolder.FindAppointments(calendarView);
// Loop through all the appointments in view
foreach (Appointment appointment in findAppointmentsResults)
{
// Do stuff with the appointment
}
Appointment existingAppointment=null;
DateTime startDate=(DateTime.Now).AddDays(-30);
DateTime endDate=(DateTime.Now).AddDays(60);
常数int NUM_APPTS=9999999;
邮箱mb=新邮箱(“youremail@email.com");
FolderId calendarsFolder=新的FolderId(WellKnownFolderName.Calendar,mb);
CalendarFolder CalendarFolder=CalendarFolder.Bind(服务,calendarsFolder);
//将日历视图设置为dateTimeNow之前30天,dateTimeNow之后60天
CalendarView CalendarView=新的CalendarView(开始日期、结束日期、数值应用);
//设置日历视图搜索的约会属性
PropertySet prop=新的PropertySet(BasePropertySet.FirstClassProperties,extendedPropertyEventID)
{ItemSchema.ItemClass,
ItemSchema.Id,
项目计划