SPFolder и Custom Field Types: ошибка сохранения папки в SharePoint 2013

Доброго времени суток.

Несколько лет назад по воле случая я занялся разработкой под систему SharePoint. О ней речь и пойдет сейчас. А точнее о версии Sharepoint 2013.

В одном из проектов возникла необходимость создавать листы типа Library, а в них нужно создавать папки с определенным набором свойств. Немного отступлю от темы: мне кажется переделка поля типа SPFieldLookup под себя, под нужды проекта или компании самая популярная задача :)

Дак вот, именно этот переделанный SPFieldLookup и надо было добавить на форму создания элемента типа Папка. Вот тут как раз кроется особенность работы — после добавления нашего кастомного поля элемент перестал создаваться без каких либо ошибок — просто обновлялась форма и поля Имя затиралось. Дебаг поля ни к чему не привел. Даже был произведен дебаг библиотеки Microsoft.Sharepoint.dll, но и там никаких ошибок не было.  Времени было потрачено много. Выяснилось, чтоб при добавлении ЛЮБОГО кастомного поля (пусть даже оно просто переопределяет класс стандартного поля без переопределения функционала) возникает эта ошибка.

В конечном итоге было найдено очень простое решение ситуации — на странице создания Upload.aspx есть веб-часть типа ListFormWebPart. И вот в этой вебчасти есть небольшая настройка для формирования клиентской обработки.

SPFolderCreateError

В случае такого поведения необходимо установить отрисовку на стороне сервера и проблема будет решена.

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



2 Комментарии

  • Подскажите, можно ли разместить на своем сайте данный пост?

  • Добавить комментарий для DeadMazai Отменить ответ

    Ваш e-mail не будет опубликован. Обязательные поля помечены *

    Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

    Яндекс.Метрика