2010-12-17 2 views
1

Ich verwende die genauen Beispiele aus der Google Kalender-API in C#: Zeichenfolge calendarURI = this.CalendarURI.Text; Zeichenfolge userName = this.UserName.Text; Zeichenfolge passWord = this.Password.Text;Google Kalender-API Ungültiger Wert für Start-Min-Parameter

 this.entryList = new ArrayList(50); 
     ArrayList dates = new ArrayList(50); 
     EventQuery query = new EventQuery(); 
     CalendarService service = new CalendarService("CalendarSampleApp"); 

     if (userName != null && userName.Length > 0) 
     { 
      service.setUserCredentials(userName, passWord); 
     } 

     // only get event's for today - 1 month until today + 1 year 

     query.Uri = new Uri(calendarURI); 

     query.StartTime = DateTime.Now.AddDays(-28); 
     query.EndTime = DateTime.Now.AddMonths(6); 


     EventFeed calFeed = service.Query(query) as EventFeed; 
     Console.WriteLine(query.Uri); 

Dies wird aus den Beispielen kopiert, aber wenn ich es laufen erhalte ich:

Ausführung der Anfrage fehlgeschlagen: http://www.google.com/calendar/feeds/default/private/full?start-min=2010-11-19T23:58:20+01:00&start-max=2011-06-17T23:58:20+02:00

, die die Nachricht

ist Ungültiger Wert für Start-Min-Parameter: 2010-11-19T23: 58: 20 01:00

Was mache ich falsch?

Antwort

0

ich denke, das Problem von selbst gelöst, jetzt habe ich nicht, dass die Fehlermeldung erhalten mehr ...

0

Sie sind nicht korrekt URL-Codierung auf das Pluszeichen in der Datetime und ein + stellt einen Raum in einer URL ...

Ersetzen Sie das Plus mit seiner URL-codiert Äquivalent %2B und alles funktioniert gut ..

.

http://www.google.com/calendar/feeds/default/private/full?start-min=2010-11-19T23:58:20%2B01:00&start-max=2011-06-17T23:58:20%2B02:00

+0

Ich bin mir nicht sicher, ob das ein Fehler in google Beispielcode oder Ihre Implementierung davon ist - Der Fehler tritt nicht mit negativen Zeitzonen als ein '-' erfordert keine URL-Codierung. – Basic

+0

Und wie werde ich das tun? Das EventQuery-Objekt analysiert den Parameter für mich, dann fragt er sich selbst ab, aber ich kann diese Daten nicht manipulieren ... – YesMan85