这是我的示例代码:
SPWeb web = SPContext.Current.Web
SPList list = web.Lists["TestList"];
try {
web.AllowUnsafeUpdates = true;
list.Title = "Test";
list.Update();
}
finally {
web.AllowUnsafeUpdates = false;
}
我删除了 finally 代码块,然后再次尝试。我发现“web.AllowUnsafeUpdates”仍然是错误的。 这是否意味着不需要设置 web.AllowUnsafeUpdates = false?
请您参考如下方法:
如果通过 GetWeb(...) 或 Webs[]。
根据“再次尝试”的含义,您可能会为新请求获取 SPWeb 的新副本。
最好让 AllowUnsafeUpdates 对范围非常大的代码段保持真实,就像您对 try/finally 所做的那样。可能有其他代码会在同一请求期间运行,并且错误地能够在不应该允许的情况下更新对象。
