2

我已经使用网络服务来更新 Sharepoint 列表。我正在使用网络凭据访问 remort 服务器。

mylist.Credentials = new NetworkCredential(_username, _password, _domain);

这是我的 innerXml 代码:

       StringBuilder innerXml = new StringBuilder();
              innerXml.AppendFormat("<Method ID='1' Cmd='Update'>" +
              "<Field Name='ID'>" + id + "</Field>" +
              "<Field Name='Title'>" + title + "</Field>" +
              "<Field Name='CostCTRShortText'>" + CostCTRShortText + "</Field>" +
              "<Field Name='ActTyp'>" + ActTyp + "</Field>" +
              "<Field Name='Employee'>" + Employee + "</Field>" +
              "<Field Name='Price'>" + Price + "</Field>" +
              "<Field Name='ITECCategory'>" + ITECCategory + "</Field>" +
              "<Field Name='ServicePrice'>" + ServicePrice + "</Field>"
              );

        innerXml.AppendLine("</Method>");

不幸的是,我在更新时遇到错误:

<Result ID="1,Update" xmlns="http://schemas.microsoft.com/sharepoint/soap/"><ErrorCode>0x81020016</ErrorCode><ErrorText>Item does not exist

The page you selected contains an item that does not exist.  It may have been deleted by another user.</ErrorText></Result>

这仅在我尝试更新远程服务器中的列表项时发生。相同的代码将按预期工作并更新本地站点中的列表项。

请帮我。

4

1 回答 1

0

我发现了这个问题。这ID是重要的角色。确保您的ID字段检索到正确的值。就我而言,我的本地列表从 ID =1 开始,但生产服务器列表没有 ID=1 的行。

您可以简单地从您的 SharePoint 列表中看到此 ID 列。并检查值。

于 2012-10-11T06:10:04.893 回答