是否需要在sharepoint中获取列表项时设置allowunsafeupdates属性? [英] Is allowunsafeupdates property need to be set while a list item is fetched in sharepoint?

查看:96
本文介绍了是否需要在sharepoint中获取列表项时设置allowunsafeupdates属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,我是sharepoint 2010项目的新手。当我浏览代码时,在许多地方我发现SPWeb.AllowUnsafeUpdates属性设置为true,即使任何列表中没有更新。只有一些列表数据提取才能完成。这是否相关,而任何列表中没有更新才能将AllowUnsafeUpdates设置为true?

Hi All, I am new to sharepoint 2010 project. When I went through the code, in many places i found SPWeb.AllowUnsafeUpdates property set to true, even when there is no updations in any of the lists. There is some list data fetching is only done. Is this relevant while there is no updation in any of the lists to use AllowUnsafeUpdates to be set to true?

SPWeb thisWeb = workflowProperties.Web;
              thisWeb.AllowUnsafeUpdates = true;
              SPList EmployeeDetails = thisWeb.Lists[BasicEmployeeDetailsList];
              SPList list = workflowProperties.Web.Lists[workflowProperties.List.ID];
              SPListItem compensatoryLeaveItem = workflowProperties.Item;
              DataTable creatermail = new DataTable();
              editurl = workflowProperties.SiteUrl.ToString() + list.DefaultEditFormUrl + "?ID=" + compensatoryLeaveItem["ID"].ToString() + "&Popup=false";
              string EmployeeDetailsID = compensatoryLeaveItem["Created By"].ToString().Substring(compensatoryLeaveItem["Created By"].ToString().IndexOf('#') + 1);
              string listQuery = "<Where><Eq><FieldRef Name='LoginName' /><Value Type='User'>" + EmployeeDetailsID + "</Value></Eq></Where>";
              SPQuery query = new SPQuery();
              query.Query = listQuery;
              SPListItemCollection createrCol = EmployeeDetails.GetItems(query);
              creatermail = createrCol.GetDataTable();
              createdbymail = creatermail.Rows[0][FieldMail].ToString();
              creater = creatermail.Rows[0][FieldFullName].ToString();
              GetHrDetails(thisWeb);
              thisWeb.AllowUnsafeUpdates = false;

推荐答案

AllowUnsafeUpdates 在您尝试时设置为true作为GET请求的结果更新数据库。



假设您有一个列表并且想要更新某些内容,那么您需要设置
AllowUnsafeUpdates is set to true when you are trying to update the database as a result of the GET request.

Say you have a list and you want to update something, then you need to set
AllowUnsafeUpdates = true

用于网络,完成后你需要将其设置为假。



所以它与在网上更新任何内容时,请使用 AllowUnsafeUpdates 选项。



阅读全文:为什么我需要使用AllowUnsafeUpdates?



希望这有帮助!

for the web and after you have done you need to set it back to false.

So it is not relevant to use AllowUnsafeUpdates option when updating nothing in web.

Read full article here : Why do I need to use AllowUnsafeUpdates?

Hope this helps!


这篇关于是否需要在sharepoint中获取列表项时设置allowunsafeupdates属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆