Ich habe die Dokumente gelesen und spiele seit Tagen mit verschiedenen EventQuery-Parametern. Ich benutze C# .NET mit googles .net API, um die Ereignisse von einem öffentlichen Kalender zu erhalten, den ich einrichte. Ich kann die Veranstaltungen von der Api ganz gut bekommen, aber ich kann es nicht bekommen, um mir die nächsten kommenden Veranstaltungen nach Datum zu geben. Mein Kalender hat Wiederholungsereignisse mit einmaligen Ereignissen gemischt. Ich habe Sachen im Internet gelesen, um direkte Abfrageparameterzeichenfolgen in der Anforderungsuri zu verwenden, aber scheint nicht, richtig zu arbeiten, wenn es in der Netzapi-Struktur verwendet wird. Hier ist, was ich habe zur Zeit als meine Basis:.NET Google Kalender-API Ereignisse nach Datum sortieren
CalendarService myService = new CalendarService("testGoogleCalendar-1");
EventQuery myQuery = new EventQuery();
myQuery.Uri = new Uri(CalendarURI);
myQuery.NumberToRetrieve = NumberOfEvents;
EventFeed calFeed = myService.Query(myQuery);
foreach (AtomEntry entry in calFeed.Entries)
{
LiteralControl test = new LiteralControl("<p><b>" + entry.Title.Text + "</b></p>");
this.Controls.Add(test);
}
Ich habe versucht, mit der eventquery-Mitglieder spielen Startdatum, Startzeit, Endzeit, SortOrder, future und sogar versucht, den Zusatz „orderby = Startzeit?“ An das CalendarURI lokalen Mitglied.
Die API-Abfrage scheint die Reihenfolge des Veröffentlichungsdatums des Ereignisses zurückzugeben, bei dem ich das Ereignis im Kalender erstellt habe und nicht, wann das Ereignis stattfinden wird.
Ich habe auch versucht, nur das Datum und die Uhrzeit des Ereignisses aus dem AtomEntry-Objekt zu bekommen, damit ich es selbst sortieren und mit dem Titel in meiner Kontrolle formatieren kann, aber der einzige Ort, den ich sehe, ist in AtomEntry Inhalt. Inhalt, der auch andere Sachen hat, die ich nicht wirklich will. Gibt es ein DateTime-Mitglied für AtomEntry, damit ich das Datum abrufen kann?
Dieser hat mich wirklich verwirrt, so dass jede Hilfe geschätzt wird.
Ich bemerkte in der Kalender-Demo-Code, der von Google kam, sie verwenden einen EventEntry anstelle eines AtomEntry, der ein Times-Mitglied vom Typ Wann hat. Aber ich habe damit gespielt und im Debugger-Modus haben alle meine Objekte ein Null Times-Member. Ich dachte wirklich, dass ich etwas hätte. Wenn ich die Raw-URI mit dieser Abfrage-Zeichenfolge in einem Browser ablegen, kommt es wieder in Ordnung, aber von den meisten zukünftigen Ereignis zu aktuellen sortiert. Sie schlagen einen anderen Parameter von sortorder = aufsteigend vor, aber das schraubt sogar den Browser-Test durcheinander. es scheint so viel Macht hier zu sein, aber jetzt Weg, es zu nutzen! danke ich werde weiter suchen –
Eric - siehe meine Bearbeitung; Ich vermute, dass das Hinzufügen des zusätzlichen Parameters im rechten Bit der Abfragezeichenfolge der richtige Weg ist. Wenn Sie sagen, dass alle Ihre Objekte ein Null Times Mitglied hatten - waren das einzelne Ereignisse oder wiederholte? –
Ich habe gerade Ihre Bearbeitung und IT WORKS !!! wenn ich über die extraparameter las, die sie machten, klang es wie meine kundenspezifischen Schlüsselwertpaare, die ich innerhalb des Kalenders speichern könnte. als Antwort auf Ihre single oder wiederkehrend habe ich für beide Typen überprüft und sie waren null. jetzt wäre es schön, die wiederkehrenden Ereignisse als einzelne Instanzen statt einer Gruppe angezeigt zu bekommen. ich muss es auch besser formatieren, da ich das Vorkommen datetime selbst nicht finden kann. Ich denke, für jetzt werde ich nur das Content-Mitglied analysieren und bekommen, was ich will. Danke Leute! –