Ошибка: «Значение не может быть нулевым. Имя параметра: Formtype »Получение страницы просмотра по умолчанию библиотеки документов

StackOverflow https://stackoverflow.com/questions/8837172

Вопрос

Я пытаюсь получить URL -адрес по умолчанию стандартного списка библиотеки документов в SP2010:

var defaltViewUrl = documentLibrary.Forms[PAGETYPE.PAGE_DEFAULTVIEW].Url;

И я постоянно получаю следующее исключение:

ArgumentNullException: "Value cannot be null. Parameter name: formType"

в то время как pagetype.page_defaultView Enum Value определенно не является нулевым. Есть идеи, что я делаю не так?

Это было полезно?

Решение

Просмотр списка по умолчанию не хранится в коллекции форм (SPList.Forms).

Так что вы действительно должны получить URL SPList.DefaultView.Url:

string absViewUrl = SPUrlUtility.CombineUrl(web.Url, documentLibrary.DefaultView.Url);

А ArgumentNullException происходит, так как SharePoint преобразует PAGETYPE.PAGE_DEFAULTVIEW нанизывать. С PAGE_DEFAULTVIEW не является допустимой формой, преобразуется в null.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top