1/1页1 跳转到查看:533
发新话题 回复该主题

提问:SPSitDataQuery跨列表查询问题

提问:SPSitDataQuery跨列表查询问题

根据MSDN上的介绍,通过使用SPSiteDataQuery可以实现跨列表查询
我现在想实现一种查询,如果我有文档库A,B,C,D四个,并且每个文档库都存在state的栏(是个选项,值为发布、草稿、删除);
我现在要获取四个文档库中的所有state为"发布"的数据,程序如下:
                SPSiteDataQuery dquery = new SPSiteDataQuery();
              dquery.Query = "<Where><And><Neq><FieldRef Name=\"FSObjType\" /><Value Type=\"Lookup\">1</Value></Neq>"+
                              "<Eq><FieldRef Name=\"State\" /><Value Type=\"Choice\">发布</Value></Eq></And></Where>";
              dquery.RowLimit = 100;
              dquery.Lists = "<Lists BaseType=\"1\"></Lists>";
              dquery.Webs = "<Webs Scope=\"SiteCollection\" />";
但并没有返回所需要的结果;

在网上查询资料,有的人说查询Text类型的值可以,即将"<Value Type=\"Choice\">“改为>”<Value Type=\"Text\">“,(栏目的类型也更改了)再测试,结果依旧不对;
请问我这个问题出在哪里了~~~
在此先谢过~~

TOP

 

dquery.Lists = "<Lists BaseType=\"1\"></Lists>";
列表末班类型错误
另外记得定义要显示的的字段: query.ViewFields = "<FieldRef Name=\"Title\" />";否则就只会有三个默认字段ListID,WebID,ID
CAMList @ServerTemplate
SPListTemplateType.Announcements = 104
SPListTemplateType.Contacts = 105
SPListTemplateType.CustomGrid = 120
SPListTemplateType.DataSources = 110
SPListTemplateType.DiscussionBoard = 108
SPListTemplateType.DocumentLibrary = 101
SPListTemplateType.Events = 106
SPListTemplateType.GenericList = 100
SPListTemplateType.InvalidType = -1
SPListTemplateType.IssueTracking = 1100
SPListTemplateType.Links = 103
SPListTemplateType.ListTemplateCatalog = 114
SPListTemplateType.PictureLibrary = 109
SPListTemplateType.Survey = 102
SPListTemplateType.Tasks = 107
SPListTemplateType.WebPartCatalog = 113
SPListTemplateType.WebTemplateCatalog = 111
SPListTemplateType.XMLForm = 115
引用下十一的原帖地址:
http://www.msotec.com/showtopic-24.aspx

TOP

 
1/1页1 跳转到
发表新主题 回复该主题