2 Stimmen

SharePoint Lists.asmx: Abfrage gibt "gelöschte" Kalenderelemente zurück?

Beim Ausführen von Caml-Abfragen gegen den sharepoint list.asmx-Dienst habe ich dieses seltsame Verhalten, dass die GetListItems-Methode auch zurückgibt gelöscht Artikel;

found item: test
found item: already done
found item: recurring
found item: recurring event 3-4
found item: Deleted: recurring event 3-4
found item: Deleted: recurring event 3-4
found item: Deleted: recurring event 3-4
found item: Deleted: recurring event 3-4
found item: Deleted: recurring event 3-4
found item: todays event 15-16 //<- NOT DELETED YET

Wie ist das möglich? Muss ich einen speziellen Filter auf die Caml-Abfrage anwenden oder ähnliches? Ich frage derzeit wie folgt ab;

<Query>
  <OrderBy>
     <FieldRef Ascending='TRUE' Name='EventDate' />
  </OrderBy>
  <Where>
     <Eq>
        <FieldRef Name='EventDate' />
        <Value Type='DateTime'><Today /></Value>
     </Eq>
  </Where>
</Query>

Was ich bis jetzt ausprobiert habe; 1. alle Dateien aus dem Papierkorb löschen 2. einen iisreset auf dem Sharepoint-Webserver durchführen

Bitte beachten Sie, dass ich in einer VMWare Workstation-Umgebung arbeite.

7voto

DevinB Punkte 8160

Nach den bisherigen Erfahrungen mit Kalendern haben diese eine sehr seltsame (aber logische) Art, mit wiederkehrenden Ereignissen umzugehen. Zwei Dinge zuerst: Kalender sind im Grunde nur eine spezialisierte Liste (wie alle Dinge in SP) mit einem schicken Ansichtssteuerelement darauf.

Wenn ein Element zu einem Kalender hinzugefügt wird, wird ein einzelnes Element zur Liste hinzugefügt. Wenn ein wiederkehrender Termin hinzugefügt wird, fügt SP nicht unendlich viele Einträge in die Liste ein, sondern einen speziellen "wiederkehrenden" Eintrag, wie Sie bemerkt haben. Wenn Sie dann einige der einzelnen wiederkehrenden Termine entfernen (z. B. Wöchentliches Treffen, aber es wird am nächsten Dienstag abgesagt), fügt SP der Liste einen speziellen Punkt "entfernter Termin" hinzu. Diese Einträge sind nicht wirklich gelöscht in dem Sinne, dass sie existieren und nicht mehr existieren, sie sind einfach Ausnahmen von dem wiederkehrenden Ereignis. Sie werden also herausgefiltert, wenn Sie den Kalender in der Listenansicht betrachten, aber sie sind "echte" individuelle SP-Listeneinträge für sich selbst.

Ich hoffe, das war sinnvoll.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X