В SharePoint 2007 выполнение SPSiteDataQuery
с фильтром для типов контента работает должным образом.
<Where>
<Eq>
<FieldRef Name='ContentType'/>
<Value Type='Text'>SomeContentType</Value>
</Eq>
</Where>
В SharePoint 2010 один и тот же запрос возвращает элементы только из одного списка.Возможным обходным решением будет фильтрация по идентификатору типа контента.Необходимо использовать оператор «BeginsWith», поскольку «тип содержимого списка» наследуется от «типа содержимого сайта»:
<Where>
<BeginsWith>
<FieldRef Name='ContentTypeID'/>
<Value Type='Text'>SomeContentTypeId</Value>
</BeginsWith>
</Where>
Но это будет соответствовать всем элементам с этим типом содержимого или любым унаследованным содержимымтип.Что не то, что я хочу.
Кто-нибудь знает, как создать SPSiteDataQuery
с фильтром типов контента?