Я пытаюсь создать веб-часть, которая обрабатывает комментарии пользователей и сохраняет их в настраиваемом списке. Я написал этот код для добавления списка на сайт после добавления веб-части на страницу,
[Guid("c314a0e8-0210-4064-b79e-bfd3594c6083")]
public class CommentWriteSpace : System.Web.UI.WebControls.WebParts.WebPart
{
SPSite site = null;
SPWeb web = null;
public CommentWriteSpace()
{
SPSecurity.CodeToRunElevated foo = new SPSecurity.CodeToRunElevated(doit);
SPSecurity.RunWithElevatedPrivileges(foo);
SPListCollection listCollection = web.Lists;
Guid listGuid = listCollection.Add("Comments List", "A list of user comments", SPListTemplateType.GenericList);
listCollection[listGuid].Fields.Add("User", SPFieldType.User, true);
listCollection[listGuid].Fields.Add("Comment", SPFieldType.Text, true);
listCollection[listGuid].OnQuickLaunch = true;
listCollection[listGuid].Update();
//this.Page.Request.Url.ToString()
}
public void doit()
{
site = SPContext.Current.Site;
web = site.OpenWeb();
}
}
Но метод RunWithElevatedPrivileges
выдает исключение, я полагаю, это проблема с правами доступа, исключение такое же, как и при выполнении метода site.OpenWeb();
без повышения прав.
В чем может быть проблема?