public static void GetExchangePublicCalendar()
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
ExData.ExchangeService service = new ExData.ExchangeService(ExData.ExchangeVersion.Exchange2010_SP2);
service.Credentials = new NetworkCredential("test", "abcdefg", "domain");
service.Url = new Uri("https://mail.abc.local/ews/Exchange.asmx");
//service.Credentials = new NetworkCredential("test", "abcdefg", "temp");
//service.Url = new Uri("https://cas.temp.local/ews/Exchange.asmx");
var rootfolder = ExData.Folder.Bind(service, ExData.WellKnownFolderName.PublicFoldersRoot);
rootfolder.Load();
foreach (ExData.Folder folder in rootfolder.FindFolders(new ExData.FolderView(int.MaxValue)))
{
if (!string.IsNullOrEmpty(folder.DisplayName))
{
Console.WriteLine(folder.DisplayName);
try
{
foreach (ExData.Folder f1 in folder.FindFolders(new ExData.FolderView(int.MaxValue)))
{
if (f1.DisplayName.ToLower() == "calender")
{
Console.WriteLine(" ---------");
sb.AppendLine(" ---------");
var _cal = f1.Id;
var _calendarView = new Microsoft.Exchange.WebServices.Data.CalendarView(System.DateTime.Now.AddYears(-6).AddYears(-1), System.DateTime.Now.Date.AddYears(-6).AddYears(1));
foreach (Microsoft.Exchange.WebServices.Data.Appointment appointmentItem in service.FindAppointments(_cal, _calendarView))
{
AddAppointmentToSharepointWithClientObjectModule(appointmentItem.Start, appointmentItem.End,appointmentItem.Subject,"");
Console.WriteLine(appointmentItem.Subject);
sb.AppendLine(appointmentItem.Subject);
Console.WriteLine(appointmentItem.Start);
sb.AppendLine(appointmentItem.Start.ToString());
Console.WriteLine(appointmentItem.End);
sb.AppendLine(appointmentItem.End.ToString());
//appointmentItem.Load();
//Console.WriteLine(appointmentItem.Body);