#sharepoint #sharepoint-2010
#sharepoint #sharepoint-2010
Вопрос:
Я создаю набор документов программно по событию нажатия кнопки
public void btnCreateDocumentSet_Click(object sender, EventArgs e)
{
try
{
lblError.Text = string.Empty;
SPSecurity.RunWithElevatedPrivileges(() =>
{
using (web = SPControl.GetContextSite(Context).RootWeb)
{
web.AllowUnsafeUpdates = true;
String url = web.Lists[" Tracker"].RootFolder.ServerRelativeUrl.ToString();
SPList list = web.Lists["Tracker"];
Hashtable props = new Hashtable();
props.Add("Number", "item1");
props.Add("Type", "item2");
DocumentSet ds = DocumentSet.Create(list.RootFolder, "NewDocumentSet3", web.ContentTypes["MydocumentSet2"].Id, props, true);
//test
//web.Dispose();
}
}
);
}
catch (SPException ex)
{
lblError.Text = ex.Message;
}
}
Я не получаю никаких исключений.При нажатии кнопки я перенаправляюсь на ошибку, подобную следующей
Однако набор документов с именем NewDocumentSet3 создается в библиотеке документов, но он выглядит как папка (я имею в виду значок). когда я захожу в библиотеку документов -> вкладка документы-> Новый документ, я не получаю тип набора документов.Пожалуйста, посоветуйте мне по этому вопросу. Заранее спасибо
Комментарии:
1. отключите пользовательские ошибки (в web.config) для вашего веб-приложения, чтобы увидеть фактическую ошибку.
Ответ №1:
- Прежде всего, отключите пользовательские ошибки, как показано на скриншотах.
- Затем замените ваш перехват SPException на перехват всех исключений.
- Еще лучше протестировать подобный код в отдельном консольном приложении, а не прямо внутри обработчиков.
- Поищите в Интернете некоторые ресурсы о том, как отлаживать приложения SharePoint. Точка останова поможет вам пройти долгий путь в этой конкретной ситуации.
- Я очень настороженно отношусь к вашему списку под названием «отслеживание [пробелов]». Мне кажется подозрительным.
Ответ №2:
Попробуйте добавить
props.Add("HTML_x0020_File_x0020_Type", "SharePoint.DocumentSet");
к свойствам hashset, которые gest передал в метод DocumentSet.Create DocumentSet.Create .