Sharepoint Client OM: создание документа в библиотеке из существующего шаблона документа - PullRequest
2 голосов
/ 30 сентября 2011

Я в настоящее время нахожусь на ногах с клиентской объектной моделью Sharepoint 2010.У меня есть приложение Winforms C # .net, из которого мне нужно получить доступ к sharepoint.

Я хотел бы программно создать новый документ в библиотеке документов на основе одного из шаблонов документов, настроенных для этой библиотеки.(По сути, репликация функциональности раскрывающегося списка «Новый документ»).

Желаемая функциональность:

  1. Показать форму с доступными типами содержимого.(Я могу сделать это, я загружаю list.ContentTypes для моей библиотеки) Затем я разрешаю пользователю выбрать один из этих типов контента.

  2. Использование типа контента для создания документа на основев шаблоне документа, который настроен для этого типа контента.Так что теперь в библиотеке существует новый документ с содержимым, полученным из шаблона документа.

  3. Откройте новый документ.

Когдая дошел до пункта 2, я застрял - я ожидаю, что там будет какая-то функциональность Создать новый документ из типа контента / шаблона, но я не могу его найти.

Может кто-нибудь установить меня на правильный путьчтобы решить это?

Ура!

Джейми

1 Ответ

0 голосов
/ 30 сентября 2011

В SharePoint есть определенный шаблон для создания и добавления элемента в SPList - вы не можете создать элемент, который не принадлежит списку.Обратите внимание, что списки и библиотеки документов являются экземплярами SPList в объектной модели.

Так что вам нужно получить ссылку на свой SPList - используйте коллекцию SPWeb.Lists http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.lists.aspx. Метод TryGetList - лучший IMO.

После этого вызовите один из методов Add для созданияэлемент в списке http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splist_methods.aspx. С помощью этого подхода можно изменить тип содержимого самого нового созданного элемента http://social.msdn.microsoft.com/forums/en-US/sharepointdevelopment/thread/c99b4599-0864-48bb-9977-2dd2066fbbb8. Вызовите обновление элемента, чтобы применить тип содержимого.

Затем установите необходимые значения полей для элемента.

Затем вызвать Update для элемента, чтобы сохранить его в базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...