【发布时间】:2011-03-29 01:17:59
【问题描述】:
我是 Sharepoint 的新手,我在 Sharepoint 网站上有一个 aspx 页面,显示字段列表,包括名字、姓氏等。我在 Visual Studio 中有一个控制台应用程序,我' m 用于测试一个 Web 服务与另一个 Web 服务之间的通信和数据传输能力;即 Sharepoint 和另一个网络服务。我的目标是使用来自其他 Web 服务的数据填充我的 Sharepoint 站点上列表中的各个字段。我正在使用对我的 Sharepoint 服务器上的 Lists 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}”。我想知道是否有办法按显示名称搜索字段。
【问题讨论】:
-
GetList方法返回有关列表本身的信息(模式),但不返回其中的实际数据。你想要的是GetListItems方法,它接受一个有点像SQL 的查询(使用协作应用程序标记语言或CAML 编写)。您还可以告诉该方法仅返回您通过列名称或 GUID 指定的特定字段子集(这些都与显示名称不同)。
标签: xml visual-studio web-services sharepoint sharepoint-2007