Schnelle Hit: Lesen von InfoPath XML direkt über ein SPListItem in SharePoint

Ich bin schon an einem Projekt, wo ich aus einem InfoPath-Formular Anlagen extrahieren müssen, arbeiten. Es gibt einige guten Ressourcen für die Analyse von InfoPath-Formularen (die sind nur XML-Dateien, So ist es eigentlich ganz einfach).

Während ich des Projekts Aufbau war, Ich begann, indem Sie ein InfoPath-Formular herunterladen und auf meine lokale Festplatte speichern. Mein c#-Code Las direkt aus dieser Instanz. Jedoch, die InfoPath-Formulare sind innerhalb einer SharePoint-Formularbibliothek wirklich Leben.. Ich habe ein wenig halben Herzens suchen, um herauszufinden, wie es direkt aus der Bibliothek zu lesen und fast aufgegeben, in diesem Fall ich hätte die Form auf eine lokale temp-Verzeichnis gespeichert und von dort zu lesen. Jedoch, Es gibt keine Notwendigkeit, durch diese Reifen zu gehen, wie Sie es direkt aus der Bibliothek zu lesen. Dieser kleine Ausschnitt zeigt wie:

/// Klasse Definition Zeug hier, einschließlich:
Privat SPFile mySharePointFile; /* Teil von einem SPList */
// Mehr Code geht hier und wir haben innerhalb einer Methode der Klasse:
XmlTextReader textReader;
TextReader = Neu XmlTextReader(mySharePointFile.OpenBinaryStream());

textReader.WhitespaceHandling = WhitespaceHandling.Keine;

textReader.Read();

// Wenn der Knoten Wert hat

während (textReader.Read())
{

... und so weiter und so fort...

Sie wichtige Bit oben ist, dass wir, die InfoPath direkt über die OpenBinaryStream lesen können() Methodenaufruf für die SPFile als Parameter an den Konstruktor XmlTextReader. Es funktioniert super.

</Ende>

Onnieren Sie meinen Blog ab.

Folgen Sie mir auf Twitter bei http://www.twitter.com/pagalvin

Technorati Tags:

Ein Gedanke zu "Schnelle Hit: Lesen von InfoPath XML direkt über ein SPListItem in SharePoint

  1. nesreen

    Hallo,
    Ich brauche Hilfe in diesem , Ich habe sharepoint 2007 Website und Infopath mit einer wiederholten Tabelle , Was ich tun muss ist, wenn das Formular in der Sharepoint-Formularbibliothek gespeichert wird, muss ich eine Schleife und Speichern der Daten in einer Liste mit SP Formular Bibliothek-Ereignishandler.

    Jede Hilfe ist sehr willkommen..

    Vielen Dank

    Antwort

Hinterlasse eine Antwort

Deine Email-Adresse wird nicht veröffentlicht. erforderliche Felder sind markiert *