由于项目用到,记录下来分享代码
namespace WebState { /// <summary> /// Service1 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 // [System.Web.Script.Services.ScriptService] public class Service1 : System.Web.Services.WebService { [WebMethod] public void ModifyState(string listID,string itemID) { string siteCol = System.Configuration.ConfigurationManager.AppSettings["siteCol"]; SPSecurity.RunWithElevatedPrivileges(delegate() //虚拟管理员,否则其他用户访问没有权限 { using (SPSite site = new SPSite(siteCol)) { using (SPWeb web = site.OpenWeb("expense")) { SPList list = web.Lists["EBRL"]; //允许修改list site.AllowUnsafeUpdates = true; web.AllowUnsafeUpdates = true; //填充list表单 SPQuery query = new SPQuery (); query.Query=string.Format(@"<Where><And><Eq><FieldRef Name='ListID' /> <Value Type='Text'>{0}</Value> </Eq><Eq><FieldRef Name='ItemID' /> <Value Type='Text'>{1}</Value></Eq></And></Where>",listID,itemID); SPListItemCollection items = list.GetItems(query); SPListItem item = null; if (items != null) { item = items[0]; } //状态更改时间 string getday = DateTime.Today.ToShortDateString(); item["ModifyTime"] = getday; //item["username"] = PersonID + ";#" + User; item["State"] = 1; //更改状态为1 item.Update(); } } } ); } [WebMethod] public void DelState(string listID, string itemID) { string siteCol = System.Configuration.ConfigurationManager.AppSettings["siteCol"]; SPSecurity.RunWithElevatedPrivileges(delegate() //虚拟管理员,否则其他用户访问没有权限 { using (SPSite site = new SPSite(siteCol)) { using (SPWeb web = site.OpenWeb("expense")) { SPList list = web.Lists["EBRL"]; //允许修改list site.AllowUnsafeUpdates = true; web.AllowUnsafeUpdates = true; //填充list表单 SPQuery query = new SPQuery(); query.Query = string.Format(@"<Where><And><Eq><FieldRef Name='ListID' /> <Value Type='Text'>{0}</Value> </Eq><Eq><FieldRef Name='ItemID' /> <Value Type='Text'>{1}</Value></Eq></And></Where>", listID, itemID); SPListItemCollection items = list.GetItems(query); //拒绝后删除记录 items[0].Delete(); } } } ); } } }
群 号:212099235