Как часть решения MOSS 2007, у меня есть веб-часть, которая отображает «термин» дня. Термины хранятся в ужасно запутанном XML-файле, поэтому все они хорошо анализируются, а затем предполагается обновить свойство с именем LastUpdatedOn до текущего времени.
Моя проблема заключается в том, что учетные записи уровня администратора могут видеть это без каких-либо проблем, но пользователи получают сообщение об ошибке, заявляющее, что у них недостаточно прав для сохранения свойств веб-части.
Я запускаю код в делегате с повышенными правами и создаю новый контекст, чтобы обойти тот факт, что контекст все еще считает, что текущий пользователь не является системной учетной записью.
Pastebin полного кода можно найти здесь
Проблемные строки:
SaveProperties = true;
LastUpdatedOn = DateTime.Now.ToString();
Комментирование этих сообщений означает, что моя веб-часть работает, но она всегда будет отображать случайный термин при каждой загрузке страницы, а не сохранять один и тот же термин в течение 24 часов.