Diese Abfrage hat den Fehler verursacht. Ein oder mehrere Feldtypen sind nicht richtig installiert. Wechseln Sie zur Seite mit den Listeneinstellungen, um diese Felder zu löschen.
Wenn ich <Where><Eq><FieldRef Name='Title' /><Value Type='Text'>
anstelle von Name
verwende, ist es OK.
Was ist daran falsch? Name ist dort in der Liste.
Vielen Dank im Voraus !!!
Wenn Sie eine definierte Spalte umbenennen, wird der interne Name NICHT aktualisiert. Zum Beispiel, Sie erstellen eine benutzerdefinierte Liste, es hat standardmäßig die Spalte "Titel". Wenn Sie diese Spalte beispielsweise in 'userId' ändern, ist der interne Name für diese Spalte immer noch 'Titel'.
Nicht sicher, dass das die Fehlermeldung beheben wird, aber so können Sie Name verwenden:
Name (für eine Standardbibliothek) Der interne Name lautet "Basisname" .
Sie können Powershell verwenden, um interne Namen aller Spalten in einer Liste zu finden:
%Vor%Beispiel Abfrage:
%Vor%Vollständiges Beispiel in der Powershell:
%Vor% Wenn Sie ein Feld über die Seite SharePoint 2010-Listeneinstellungen erstellen, werden alle Leerzeichen im Feldnamen zu Sequenzen von _x0020_
für den internen Feldnamen. Neben Leerzeichen codiert SharePoint andere Nicht-Standardzeichen in ähnlicher Weise. Sie sehen also den gewünschten Namen auf der Webseite der Liste, aber der programmatische Zugriff erfordert den internen Namen, der von SharePoint erstellt wurde ( sie sollten uns erlauben, den internen Namen zu spezifizieren ... )
Der Kommentar von @MarekKembrowski zum Op sagt an, wie Sie den internen Namen mit Ihrem Browser erhalten.
Ich nehme an, das Problem, das Sie haben, ist nicht <FieldRef Name='Name' />
, sondern <Value Type='Text'>
. Wenn Sie den Typ des Namensfeldes überprüfen, werden Sie feststellen, dass es sich um eine Datei handelt. Wenn jemand weiß, wie man das abfragt, wäre ich auch dankbar. Momentan benutze ich Titel.
Dieselbe Fehlermeldung wird für schlecht konstruierte Abfragen angezeigt, z. B. solche, die keine übergeordneten Tags für gleichgeordnete Elemente haben.
Sie fragen:
%Vor%würde dieselbe Fehlermeldung ausgeben, aber nicht:
%Vor%Ich kämpfte zu lange damit und die Antwort war direkt vor mir. Für mich war der Kommentar, den Marek Kembrowski zu der ursprünglichen Frage gepostet hatte, genau das, was ich tun musste, aber ich überflog es, weil es ein Kommentar war, also werde ich wiederholen, was Marek in meinen eigenen Worten so hoffentlich gesagt hat Die nächste Person, die mit diesem Problem kommt, wird den oben genannten Kommentar nicht verpassen.
Wenn Sie in SharePoint eine Spalte erstellen, gibt es zwei Textfelder, in denen Sie Informationen zur Beschreibung des Feldes Spaltenname und Beschreibung angeben.
Was mich TÖTET hat, war, dass die Sharepoint-Site mit dem Spaltennamen [OrderID] und einer anderen Beschreibung [CON] eingerichtet wurde.
Hier können Sie sehen, wie Sharepoint mit der zuerst erstellten Bestell-ID und der Bestell-ID aussieht, die ich erstellt habe, nachdem ich das Problem herausgefunden habe. . . Der Unterschied ist einer der OrderID Spaltennamen sagt OrderID;)
Die einzige Möglichkeit, den ursprünglichen Spaltennamen zu sehen, ist, über die Spalte in den Bibliothekseinstellungen zu schweben, wie oben erwähnt. . . Dies zeigt den Link am unteren Rand des Browsers. Wenn Sie klicken, um es zu bearbeiten. . . es ist nicht einmal richtig. . . zeigt überhaupt nichts über den tatsächlichen Spaltennamen. . .even zeigt den Namen der Beschreibung im Spaltennamenfeld an. . . GGRRRRRRR !!!!!
Wie auch immer, hier ist der Code, den ich verwendet habe, um die Daten abzurufen:
%Vor%+1 an Marek für die korrekte Lösung oben. Ich wünschte, ich hätte es beim ersten Mal gesehen.
Tags und Links sharepoint caml sharepoint-clientobject