我是Sharepoint的新手,我在Sharepoint网站上有一个aspx页面,显示了一个字段列表,包括名字,姓氏等。我有一个控制台应用程序,在Visual Studio中,我'用于测试一个Web服务与另一个Web服务之间的通信和数据传输能力;即Sharepoint和另一个Web服务。我的目标是使用来自其他Web服务的数据填充Sharepoint站点上列表中的各个字段。我正在使用我的Sharepoint服务器上的列表Web服务的Web引用来尝试访问Sharepoint站点上此特定列表中的字段。我有以下代码:
''Name of my web reference to Lists Web Service is "sharepoint"
Dim sharepointList As New sharepoint.Lists()
sharepointList.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim testLists As XmlNode = sharepointList.GetListCollection
Dim xmlText As String = testLists.InnerXml
Dim xmlElement As XmlAttributeCollection = testLists.Attributes
我一直试图找到这个特定列表的位置。我承认我不确定我应该在哪里看,正如上面的代码所示。我一直在使用调试器来分析上述每个变量,以尝试查找XML中定义的特定列表的位置。任何帮助或见解都表示赞赏。
以下是Sharepoint页面的快照,其中包含我要搜索的列表:
更新:
我决定使用GetList()函数并将名称“New Hires”传递给它。它最终抓住了上面的列表。现在我只是想看看我是否可以访问上面所示的字段,分析xml似乎只是显示名称,实际的fieldID是一些字母数字字符串,即Display Name =“Business Phone”字段ID =“{fd630629-c165-4513-b43c-fdb16b86a14d}”。我想知道是否有办法按显示名称搜索字段。
答案 0 :(得分:0)
图片演练
http://www.c-sharpcorner.com/UploadFile/mahesh/WSSInNet01302007093018AM/WSSInNet.aspx
使用Talk to SharePoint Through its Web Services
进一步深入了解要将记录添加到列表,您需要(MSDN) Lists web service或this example或this one which also covers how to find the GUID of a list.
中的{{3}}答案 1 :(得分:0)
这是一种双管齐下的方法。
首先,您需要从列表所在的特定网站的上下文中访问SharePoint服务。例如,如果列表的URL是:
http://sharepoint/foo/bar/baz/Lists/MyList
您可以从http://sharepoint/foo/bar/baz/_vti_bin/lists.asmx
访问列表Web服务现在您处于正确的网站集中。剩下的步骤是在调用其中一个List方法时通过名称或GUID指定列表。例如,如果你正在调用UpdateListItems
方法(听起来就像你的那样),你可以使用:
sharepoint.UpdateListItems( "{B1DC8A9C-2316-41AD-875B-01C9D4BD19F8}", myUpdateXml );
或
sharepoint.UpdateListItems( "MyList", myUpdateXml );
显然,列表名称将对应于您在列表的URL中看到的实际列表名称。通过查看SharePoint中的列表,然后导航到设置>可以找到GUID。列出设置并从URL中获取它(查找List
查询字符串参数)。它将被编码,但您可以使用URL Decoder/Encoder之类的实用程序将其解码为正确的GUID。在GUID作为参数发送时,请务必记住使用{}括号。