首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用C#删除Sharepoint中的对象?

如何用C#删除Sharepoint中的对象?
EN

Stack Overflow用户
提问于 2022-09-22 08:05:56
回答 1查看 42关注 0票数 1

我有一个由SSIS条件拆分生成的列表。我尝试使用C#从列表中的每个项中删除sharepoint站点中的每个项目,但是,我执行了deleteobject();和context.ExecuteQuery();它捕获了以下错误:

[移动SP SOQ 297]错误: ExecuteQuery SP Insert.Item上不存在错误。

所选页包含不存在的项。它可能已被其他用户删除。

代码语言:javascript
复制
        //Authentification au site SP page prncipale
        string url = Variables.ListURLdelete;
        ClientContext context = new ClientContext(url);
        context.AuthenticationMode = ClientAuthenticationMode.Default;
        context.Credentials = new NetworkCredential(Variables.WebServiceServerUserName, Variables.WebServiceServerPassword);

        Web web = context.Web;
      
        List SOQList = context.Web.Lists.GetByTitle("SOQ");
        var item = SOQList.AddItem(new ListItemCreationInformation());
        if (Row.SOQENDDate >= 10)
        {

            if (!Row.Assignment_IsNull)
            {
                item["SOQAssignmentCode"] = Row.Assignment;
            }
            //if (!Row.AssignmentLabel_IsNull)
            //{
            //    item["SOQAssignmentStatus"] = Row.AssignmentLabel;
            //}
            //if (!Row.SOQTitle_IsNull)
            //{
            //    item["Title"] = Row.SOQTitle;
            //}
            //Insertion dans SP
            // https://learn.microsoft.com/en-us/previous-versions/office/developer/sharepoint-2010/ee539976(v=office.14)
            try
            {
                Console.WriteLine(item);
                item.DeleteObject();
            }
            catch (Exception d)
            {
                ComponentMetaData.FireError(0, "", "Error on Update Items SP Insert." + d.Message, "", 0, out vbool);
            }
            try
            {
                context.ExecuteQuery();
            }
            catch (Exception d)
            {
                ComponentMetaData.FireError(0, "", "Error on ExecuteQuery SP Insert." + d.Message, "", 0, out vbool);
            }
        }

    }

该错误是否出现在context.Web.Lists.GetByTitle("SOQ"); =列表SOQList上?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-25 13:07:14

代码语言:javascript
复制
// Authentification au site SP page prncipale
        string url = Variables.Test;
        ClientContext context = new ClientContext(url);
        context.AuthenticationMode = ClientAuthenticationMode.Default;
        context.Credentials = new NetworkCredential(Variables.WebServiceServerUserName, Variables.WebServiceServerPassword);

        Web web = context.Web;

        List SOQList = context.Web.Lists.GetByTitle("SOQ");

        if (Row.SOQStartDate >= 10 & !Row.SPID_IsNull)
        {
             This creates a CamlQuery that has a RowLimit of 100, and also specifies Scope="RecursiveAll"
             so that it grabs all list items, regardless of the folder they are in.
            CamlQuery query = CamlQuery.CreateAllItemsQuery();
            ListItemCollection items = SOQList.GetItems(query);


            context.Load(SOQList, list => list.ItemCount);
            context.ExecuteQuery();

            int startcount = SOQList.ItemCount;
            // delete du status
            ListItem listItem = SOQList.GetItemById(Row.SPID); -->OK

            try
            {
                listItem.DeleteObject();
                // SOQList.Update();

            }
            catch (Exception d)
            {
                ComponentMetaData.FireError(0, "", "Error on Update Items SP Insert." + d.Message, "", 0, out vbool);
            }
            try
            {
                context.ExecuteQuery();

            }
            catch (Exception d)
            {
                ComponentMetaData.FireError(0, "", "Error on ExecuteQuery SP Update." + d.Message, "", 0, out vbool);
            }
            context.Load(SOQList, list => list.ItemCount);
            context.ExecuteQuery();

            int endcount = SOQList.ItemCount;
            Console.WriteLine("Start: {0}  End: {1}", startcount, endcount);
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73811235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档