Быстрый хит: Чтение InfoPath XML непосредственно из SPListItem в SharePoint

Я был работает над проектом, где мне нужно извлекать вложения из формы InfoPath. Есть некоторые хорошие ресурсы для разбора формы InfoPath (которые являются просто XML-файлов, так что на самом деле довольно легко).

В то время как я строил проекта, Я начал загрузки формы InfoPath и сохранив его на мой локальный жесткий диск. Мой код c# чтении непосредственно из этого экземпляра. Однако, формы InfoPath действительно живут внутри в библиотеке форм SharePoint. Я сделал немного половину сердцем поиска, чтобы узнать, как читать его непосредственно из библиотеки и почти сдался, в этом случае я бы сохранить форму в локальный каталог temp и прочитать его оттуда. Однако, Существует не нужно идти через эти обручи, как вы можете прочитать его непосредственно из библиотеки. Этот маленький фрагмент показывает, как:

/// Класс определения вещи здесь, включая:
частные SPFile mySharePointFile; /* Частью SPList */
// Здесь находится более код и внутри метода класса у нас:
XmlTextReader textReader;
textReader = Новые функции XmlTextReader(mySharePointFile.OpenBinaryStream());

textReader.WhitespaceHandling = WhitespaceHandling.Нет;

textReader.Read();

// Если узел имеет значение

во время (textReader.Read())
{

... и так далее и так далее...

Они основные бит выше, что мы можем читать InfoPath непосредственно через OpenBinaryStream() вызов метода на SPFile как параметр в конструктор на XmlTextReader. Он прекрасно работает.

</конец>

Подписаться на мой блог.

Следуй за мной по щебетать на http://www.twitter.com/pagalvin

Бирки Technorati:

Одна мысль на "Быстрый хит: Чтение InfoPath XML непосредственно из SPListItem в SharePoint

  1. Несрин

    Привет,
    Мне нужна помощь в этом , У меня есть sharepoint 2007 сайт и infopath с повторяющейся таблицы , то, что мне нужно сделать это после того, как форма сохраняется в библиотеке форм sharepoint, нужно петли и сохранить данные в список с помощью обработчика событий библиотеки форм SP.

    Любая помощь очень высоко.

    Спасибо

Оставь ответ

Ваш электронный адрес не будет опубликован. Обязательные поля помечены *