【问题标题】:Sharepoint Web Services Error GetListItems in Lists.asmxLists.asmx 中的 Sharepoint Web 服务错误 GetListItems
【发布时间】:2010-03-23 01:03:26
【问题描述】:

啊。我见过 15 个这样的例子:SharePoint web services: test if file exists

我与 SP 站点在同一台机器上,以 SP 和机器管理员身份运行,我可以愉快地在 SiteData Web 服务上调用 GetList、GetListCollection 和 GetWeb,但每次我在 Lists Web 服务上调用 GetListItems得到“值不能为空。\n参数名称:g”错误。

事件查看器中没有任何内容。 共享点日志文件中没有任何相关内容 有谁知道原因/修复/在哪里看?

System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
    System.Xml.XmlNode ndQuery = xmlDoc.CreateNode(System.Xml.XmlNodeType.Element, "Query", "");
    System.Xml.XmlNode ndViewFields = xmlDoc.CreateNode(System.Xml.XmlNodeType.Element, "ViewFields", "");
    System.Xml.XmlNode ndQueryOptions = xmlDoc.CreateNode(System.Xml.XmlNodeType.Element, "QueryOptions", "");

    ndQuery.InnerXml = "<OrderBy><FieldRef Name=\"ID\" /></OrderBy>";


    ndQueryOptions.InnerXml = "<IncludeMandatoryColumns>TRUE</IncludeMandatoryColumns><IncludeAttachmentUrls>FALSE</IncludeAttachmentUrls><Paging />";

    svc.GetListItems(list.ListName, null, ndQuery, ndViewFields, "5", ndQueryOptions, list.WebID.ToString());

【问题讨论】:

  • 一些额外的疯狂以防万一。 GetListCollection() 返回“0”而不是 schemas.microsoft.com/sharepoint/soap"> XML 节点

标签: c# web-services sharepoint


【解决方案1】:

您需要将 string.empty 作为第二个参数(视图名称)而不是 null 值传递。

【讨论】:

    【解决方案2】:

    我已经尝试了与您完全相同的代码,它对我来说非常有效。另外,从您对 GetListCollection() 的评论来看,环境出了点问题。

    您是否检查过您是如何连接到该服务的?也许在它自己的控制台应用程序中尝试过?

    如果您可以发布与服务连接相关的代码,可能会有所帮助。此外,Web 应用程序的设置方式是否有任何不寻常之处(例如备用访问映射)。

    【讨论】:

    • 这就是我开始想到的。我在网上看到过有关“列定义中缺少 WEBID 属性”和类似内容的其他帖子,但是当我调查时,它们都不匹配,或者我得到的结果与他们所说的完全相反(比如 GetListColumns )。鉴于这是一个普通的安装,我真的很沮丧。
    • 如果没有看到您的环境,就很难知道去哪里寻找。您可以尝试使用 WinMerge 之类的工具将工作的 c:\inetpub\wss\... 和 12 Hive 与您的安装进行比较。看看是否存在导致问题的明显差异。还要彻底比较IIS配置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多