Cập nhật 1 calendar tồn tại trên google

Cũng như tạo mới một calendar, việc cập nhật một calendar có sẵn cũng tuân thủ 4 bên dưới.

  • Bước 1: tạo đối tượng CalendarService tên service cho tài khoản gmail muốn cập nhật calendar
CalendarService service = new CalendarService("FrmGoogleCalendar");

service.setUserCredentials(txtEmail.Text.Trim(), txtPassword.Text.Trim());

  • Bước 2:

Tạo mới đối tượng CalendarQuery tên query để thực hiện việc lấy tất cả các calendar của tài khoản gmail

Sau đó tạo đối tượng CalendarFeed tên resultFeed để chứa danh sách tất cả các calendar được lấy về

CalendarQuery query = new CalendarQuery();

query.Uri = new Uri("https://www.google.com/calendar/feeds/default/owncalendars/full");

CalendarFeed resultFeed = (CalendarFeed)service.Query(query);
  • Bước 3: lấy calendar đầu tiên trong danh sách calendar ở bước 2, và gán các giá trị cần thiết cho calendar cần cập nhật
CalendarEntry calendar = (CalendarEntry)resultFeed.Entries[0];

calendar.Title.Text = "Cập nhật calendar";

calendar.Color = "#A32929";

calendar.Selected = true;
  • Bước 4: gọi hàm Update() của đối tượng calendar để thực hiện việc cập nhật
calendar.Update();

Để sử dụng được các đối tượng CalendarService, CalendarQuery, CalendarEntry và CalendarFeed thì chúng ta phải khai báo 4 namespace bên dưới (tham khảo)

using Google.GData.Calendar;

using Google.GData.Client;

using Google.GData.Extensions;

using Google.GData.AccessControl;

Dưới đây là đoạn code hoàn chỉnh về cập nhật calendar tồn tại trên google.

private void btnUpdateCalendar_Click(object sender, EventArgs e)
{
   try
   {
      //Bước 1: tạo đối tượng CalendarService cho tài khoản gmail
      CalendarService service = new CalendarService("FrmGoogleCalendar");
      service.setUserCredentials(txtEmail.Text.Trim(), txtPassword.Text.Trim());

      //Bước 2: lấy danh sách các calendar của tài khoản gmail ở bước 1
      CalendarQuery query = new CalendarQuery();
      query.Uri = new Uri("https://www.google.com/calendar/feeds/default/owncalendars/full");
      CalendarFeed resultFeed = (CalendarFeed)service.Query(query); // using Google.GData.AccessControl;

      //Bước 3: lấy ra calendar đầu tiên trong danh sách calendar ở bước 2
      CalendarEntry calendar = (CalendarEntry)resultFeed.Entries[0];
      calendar.Title.Text = " Cập nhật calendar ";
      calendar.Color = "#A32929";
      calendar.Selected = true;

      //Bước 4: dùng hàm update() để cập nhật tên và màu của calendar được chọn ở bước 3
      calendar.Update();

      MessageBox.Show("Cập nhật thành công");
   }
   catch (Exception ex)
   {
      MessageBox.Show(ex.ToString());
   }
}

Chúc các bạn thành công!  8-O


Leave a Reply

Your email address will not be published. Required fields are marked *