Не удалось изменить тип содержимого элемента списка документов в библиотеке документов - PullRequest
0 голосов
/ 19 января 2011

Я программно меняю тип содержимого документа в библиотеке документов.Но документ добавляется только с типом содержимого.

Вот мое кодирование:

SPFile ofile = oweb.GetFile(oweb.Url + '/' + oDocSet.Item.Url + '/' + refName);
ofile.Item["Content Type"] = octype.Name;
ofile.Item["Content Type ID"] = octype.Id;
ofile.Item.Update();

, когда я проследил вышеупомянутую кодировку, тип содержимого изменяется, когда я назначаю их элементу.но после обновления элемента в последней строке тип содержимого элемента устанавливается на тип содержимого по умолчанию.

Ответы [ 2 ]

1 голос
/ 19 января 2011

Не должно ли это быть:

SPFile ofile = oweb.GetFile(oweb.Url + '/' + oDocSet.Item.Url + '/' + refName); 
ofile.Item["ContentType"] = octype.Name; 
ofile.Item["ContentTypeId"] = octype.Id; 
ofile.Item.Update(); 

Обратите внимание на отсутствие пробелов в именах полей

PS: действительно ли тип содержимого разрешен в библиотеке?

0 голосов
/ 06 сентября 2013

У меня была такая же ситуация, как описано здесь.ContentType остается тем же после сохранения документа в библиотеке документов в пользовательской форме.Приведенный выше код выполняется без исключений и сообщений, но тип содержимого остается тем же.

Проблема решена путем возврата к форме редактирования по умолчанию, изменения типа содержимого с ее помощью и повторного назначения пользовательской формы редактирования в Sharepoint Designer.Теперь изменения типа контента работают без проблем.

Возможно, это внутренняя ошибка с sharepoint.

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