2010-12-02 13 views

Respuesta

3

si u utilizar la-min = Actualizado lastsynctime obtendrá la nueva correcta, actualizadas, eventos dleeted Aslo ..

string formatedDate = ""; 
     EventQuery query = new EventQuery(); 
     DateTime? time; 
     if (!string.IsNullOrEmpty(startDate)) 
     { 
      time = Convert.ToDateTime(startDate); 
      formatedDate = string.Format("{0:s}", time); 

      // Create the query object: 
      query.Uri = new Uri("http://www.google.com/calendar/feeds/" + service.Credentials.Username + "/private/full?updated-min=" + formatedDate); 
     } 
     else 
     { 
      query.Uri = new Uri("http://www.google.com/calendar/feeds/" + service.Credentials.Username + "/private/full"); 
     } 


     // Tell the service to query: 
     EventFeed calFeed = service.Query(query); 
     return calFeed.Entries.Cast<EventEntry>(); 
+0

Tengo una duda sobre la sincronización, tengo eventos de Google y eventos de Outlook ... Pero sobre qué base puedo sincronizar ambos eventos ... ya que ambos tienen diferentes EventId – Mahantesh

3

Esta página: http://code.google.com/apis/calendar/data/2.0/developers_guide_dotnet.html Contiene toda la información que necesita, incluyendo ejemplos.

Le mostrará cómo buscar y empujar artículos, y cómo consultar los artículos como ha sugerido.

Espero que ayude.

+0

Gracias por la respuesta, pero en realidad yo estaba en ese documento antes de publicar esta pregunta. Tal vez echo de menos algo, pero no veo ninguna notificación de empujar (no tirar) de Google aparte de correo electrónico o SMS ni recuperar cambios de calendario desde una marca de tiempo. – badallen

+0

Por ejemplo: si hoy un usuario actualiza su entrada de ayer, ¿cómo sabré que este usuario ha realizado el cambio en las entradas de las fechas anteriores? por lo tanto, será bueno saber todos los cambios desde una marca de tiempo particular. Espero que tenga sentido. – badallen

+0

No estoy seguro si es de mucha ayuda, pero en el pasado solía sincronizar el calendario de google con Outlook. En Outlook agregué datos adicionales a todos los artículos para poder compararlos con los artículos en línea y detectar cambios/actualizaciones como esa. Te daría el código, pero lamentablemente hace mucho tiempo ... fue hace 2 años, para sincronizar varios gcalendarios con perspectiva. – TimothyP

-1

Seguro

var service = new CalendarService(domainName); 
service.setUserCredentials(email, pwd); 

// Create the query object: 
EventQuery query = new EventQuery(); 
query.Uri = new Uri(string.Format("https://www.google.com/calendar/feeds/{0}/private/full", email)); 

// Tell the service to query: 
EventFeed calFeed = service.Query(query); 
return calFeed.Entries.AsEnumerable().Cast<EventEntry>().Where(entry => ???); 

en el objeto 'consulta' u puede añadir condición u quieren como 'query.StartDate'

+0

Gracias por la respuesta, pero creo que esto me da todas las entradas después de ese StartDate, pero lo que quiero es agregar todas las entradas (pasado, presente y futuro) después de una marca de tiempo en particular. – badallen

Cuestiones relacionadas