sharepoint的AllowUnsafeUpdates问题解决方案详解
来源:广州中睿信息技术有限公司
发布时间:2012/10/21 23:25:16 编辑:itlead 阅读 1807

  前几天做有关网站栏的东西,在修改网站栏后保存时,报错:需设置SPWeb的AllowUnsafeUpdates为true;其实这个错误很常见的,相信做sharepoint的同学都有见过,本人按照以往的经验设置了当前SPWeb的AllowUnsafeUpdates为true;结果报错,而且无论我怎么设置SPSite还是SPWeb都还是报错;没法子,到网上查资料,嘿,还真找到解决方法啦,就是设置当前的httpcontext为null,当httpcontext为null的时候,allowUnsafeUpdates就一直是true,代码如下:

  

  //设置HttpContext.Current = null ,避免出现 allowUnsafeUpdates 的问题

  

  //此处为处理SPField属性的代码  

  //此处使用的是Update(true),目的是:更新基于此网站栏的所有列表栏  

  Field.Update(true);

  //最后别忘啦在设置回HttpContext.Current  

  

  

  其实这次遇到这个问题,主要是因为用的是field.Update(true),而不是field.Update();若只是简单的修改列的属性,只要设置SPWeb的AllowUnsafeUpdates为true即可。上面的处理方式有一个需要注意的问题,当设置HttpContext.Current为null时,是取不到当前SPSite和SPWeb的,说白啦就是有关Context.Current的东西都用不了,不管是HttpContext.Current还是SPContext.Current。

  

  

  本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。