Para fazer isto basta usar o código abaixo:
using (SPSite siteCollection = new SPSite(url))
{
using (SPWeb web = siteCollection.OpenWeb())
{
SPSiteDataQuery query = new SPSiteDataQuery();
//ID base Template Biblioteca de Documentos
query.Lists = @"<Lists BaseType='1' Hidden='TRUE' />";
//Campos que deseja que sejam buscados da biblioteca
query.ViewFields = @"<FieldRef Name=""ID"" /><FieldRef Name=""ContentTypeId"" />";
//Escopo de busca como Site Collection
query.Webs = @"<Webs Scope='SiteCollection'/>";
//Definir o Tipo de Conteudo
query.Query = @"<Where>
<BeginsWith>
<FieldRef Name='ContentTypeId'/>
<Value Type='Text'>" + contentTypeID + @"</Value>
</BeginsWith>
</Where>";
//Resultado da Busca
DataTable dt = web.GetSiteData(query);
}
}
Valeuuuus
[Gosto de compartilhar problemas com soluções que encontro no dia de trabalho]