0

我使用以下代码列出来自多个文件夹的文件:

SPSiteDataQuery q = new SPSiteDataQuery();
q.Lists = "<Lists BaseType='1'/>";
q.Query = "<Where> <Where>
<And><Neq><FieldRef Name='FSObjType'/><Value Type='Lookup'>1</Value></Neq>
<Contains><FieldRef  Name='ProjectProperty.Title' /><Value Type='Text'>Site_Name_Value_From_TextBox</Value></Contains>
</And>
</Where></Where>";

q.Webs = "<Webs Scope='Recursive' />";
q.ViewFields = "<FieldRef Name='ID' /><FieldRef Name='LinkFilename' /><FieldRef Name='File_x0020_Type' /><FieldRef Name='Title' /><FieldRef Name='FileRef' /><ListProperty Name='Title' /><ProjectProperty Name='Title' />";

该代码在列出项目时工作正常,但我需要按站点名称和库名称过滤项目,我使用

<Contains><FieldRef Name='ProjectProperty.Title' /><Value Type='Text'>Site_NAme</Value></Contains>

但我没有得到任何结果,当我使用 Title 或 FileRef 或任何其他字段过滤器工作正常时,我应该使用什么来代替“ProjectProperty”和“ListProperty”?

4

1 回答 1

0

尝试

<FieldRef Name="SiteName" /><Value Type='Text'>Site_Name</Value>

或者

<FieldRef Name="ows_SiteName" /><Value Type='Text'>Site_Name</Value>
于 2012-02-17T15:11:52.833 回答