Ich habe Probleme beim Aktualisieren eines SharePoint publishingWeb-Attributs unter RunWithElevatedPrivileges. Es schlägt mit der Ausnahme "Die Sicherheitsüberprüfung für diese Seite ist ungültig" in dieser Zeile fehl: "pubWeb.IncludeInCurrentNavigation = false;". Unten ist der Code, den ich auszuführen versuche. Normalerweise kann man AllowUnsafeUpdates = true setzen, aber publishingWeb's haben diese spezielle Eigenschaft nicht.
Meine Frage ist, was ist der richtige Weg, um publishingWeb Attribute in einem erhöhten Kontext zu aktualisieren?
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite siteCollection = new SPSite(parentSiteUrl))
{
//siteCollection.AllowUnsafeUpdates = true;
using (SPWeb web = siteCollection.OpenWeb(subSiteUrl))
{
//web.AllowUnsafeUpdates = true;
if (PublishingWeb.IsPublishingWeb(web))
{
// hide new sub-site from navigation elements.
PublishingWeb pubWeb = PublishingWeb.GetPublishingWeb(web);
pubWeb.IncludeInCurrentNavigation = false;
pubWeb.IncludeInGlobalNavigation = false;
pubWeb.Update();
}
}
}
});