none
通过webservice抽取SharePoint的list数据怎么样不抽取metainfo列的数据 RRS feed

  • 问题

  • 最近在做一个sharepoint数据抽取的工具时碰到的问题,抽取好几个网站,基本都成功了,只有一个网站总会报request time out的错误(已将timeout设成无限),网上查了下,可能是数据量的问题。

    我从抽出的数据看了下,发现metainfo包含了所有列的信息从而导致数据量过大,有没有办法在抽数据时不抽metainfo(Property Bag)列或者有什么方法不让webservice timeout的哈?

    我用的是Service.GetListItems()来抽取数据的

    非常感谢~

    2011年12月25日 15:05

答案

  • Hi Cary,

    使用webservice获取listitem, public XmlNode GetListItems (
    string listName,
    string viewName,
    XmlNode query,
    XmlNode viewFields,
    string rowLimit,
    XmlNode queryOptions,
    string webID
    )

     通过设置XmlNode viewFields参数,是可以设定你想要获取的列的。 比如:

    <ViewFields>
      <FieldRef Name="LinkTitle"></FieldRef>
      <FieldRef Name="AssignedTo"></FieldRef>
      <FieldRef Name="Status"></FieldRef>
      <FieldRef Name="Priority"></FieldRef>
      <FieldRef Name="DueDate"></FieldRef>
      <FieldRef Name="PercentComplete"></FieldRef>
    </ViewFields>
    

    请参考 http://msdn.microsoft.com/en-us/library/ms442073(v=office.12).aspx 

     

     

    Thank you

    2012年1月3日 12:37