如何使用Web服务获取SharePoint列表中新插入行的ID

时间:2014-04-21 11:43:24

标签: c# web-services sharepoint

我使用以下代码使用网络服务在共享点列表中插入新的列表项。

 ServiceReference.DataContext sc = new ServiceReference.DataContext(new Uri("http://servername:portnumber/_vti_bin/ListData.svc"));
 sc.Credentials = new System.Net.NetworkCredential(spusername, sppassword, spdomain);
 sc.AddToSampleList(new ServiceReference.SampleList
                            {
                                Title= "Hello World"                                                               

                            });
sc.SaveChanges();

工作正常..

我需要新插入行的ID ..

无论如何都要获得新插入的行的ID,就像在服装Web部件中一样

  SPList spList = spWeb.Lists["SampleList"];
  SPListItem spListItem = spList.Items.Add();
  spListItem["Title"] = "Hello world";
  spListItem.Update();
  int ID=spListItem.ID;//like this

请提供任何帮助或建议..

提前致谢...

2 个答案:

答案 0 :(得分:0)

您将不得不更改Web服务,以返回一个整数,该整数将是新插入记录的ID。所以SaveChanges()需要返回一个int。执行此操作时,您需要更新服务引用。

答案 1 :(得分:0)

 ServiceReference.SampleListItem li = new ServiceReference.SampleListItem { Title= "Hello      World" };
 sc.AddToSampleList(li);
 sc.SaveChanges();
  int id = li.Id;

请查看以下链接了解更多详情

http://social.msdn.microsoft.com/Forums/en-US/5750ddc2-a14f-4770-926d-d049a2a6332f/how-to-get-the-id-of-the-new-inserted-row-in-the-sharepoint-list-by-using-web-service?forum=sharepointdevelopment