Comment puis-je obtenir un composant webpart Requête de Contenu pour afficher des éléments de plus d'un type de liste?

Je suis en train d'utiliser un composant webpart Requête de Contenu pour créer un "Quoi de neuf" de la page dans Sharepoint 2010. Le but de cette page est d'afficher tous les documents qui ont été téléchargés dans les 14 derniers jours. Le truc, c'est que ces documents pourraient appartenir à n'importe quel nombre de listes qui sont définies dans un certain nombre de définitions de liste. Ce sont des définitions de liste personnalisée basée sur les types de contenu. Nous avons des types de contenu de base que chaque de nos de contenu personnalisé types héritent d'. Ils sont également tous partie du même groupe de types de contenu. J'ai déterminé qu'il n'est pas possible d'utiliser le SP de l'INTERFACE utilisateur pour configurer la CQWP de retour des articles à partir de plusieurs types de liste, puisque l'une de l'requis champs de la requête est de type liste. Donc - je suis d'essayer d'utiliser CAML pour définir ce CQWP et c'est là que je vais avoir des ennuis. Mon objectif final pour le CAML être défini dans une définition de site (onet.xml fichier) mais j'ai aussi pas eu de chance, avec le téléchargement d'un .webpart fichier à partir de la SP de l'INTERFACE utilisateur. J'ai trouvé plusieurs articles qui expliquent comment cela doit être fait, mais qui n'ont pas été en mesure d'obtenir les solutions suggérées pour le travail. Cette Article MSDN me dit qu'il devrait être possible à l'aide de la ListsOverride élément. C'est de cette façon l'article raconte-moi faire:

<![CDATA[
          <Lists BaseType="0">
          </Lists> ]]>

Depuis que je suis à la recherche pour les Bibliothèques de documents, je voudrais utiliser un type de base de 1 plutôt que 0.

J'ai été incapable de déterminer la syntaxe de ce qui pourrait ressembler à l'intérieur de la onet.xml fichier donc j'ai pensé que je commencerais par essayer de l'obtenir téléchargé comme un .webpart fichier.

C'est ce que le ListsOverride élément ressemble:

<property name="ListsOverride" type="string">
    <![CDATA[<Lists BaseType="1"></Lists>]]>
</property>

Toutefois - dès que j'ai télécharger un .webpart fichier dans le CAML et ajouter la webpart à une page que je saut de page dans Sharepoint. C'est ce que j'obtiens:

Erreur de serveur dans l'Application'/'.
Tenté d'utiliser un objet qui a cessé d'exister.

La recherche sur cette erreur points me code, qui dispose d'un objet tel qu'SPContext.Actuel.Web mais je n'ai pas de code ici. Il ressemble presque à la CQWP a un bug. OU - je suis pas en forme CAML correctement ou peut-être que j'ai besoin de changer quelque chose dans un élément différent dans le CAML?

Je suis en cours d'exécution Sharepoint 2010 SP1 avec tous les derniers correctifs. (Je crois)

J'ai essayé plusieurs autres formats, mais sans succès.

J'ai essayé de se débarrasser de l'embedded CDATA balises comme ceci:

<property name="ListsOverride" type="string">
    <Lists BaseType="1"></Lists>
</property>

Mais alors Sharepoint ne me permet pas de télécharger l' .webpart fichier. (Non valide .webpart fichier)

Le format intégré à l'CDATA tags semble être la seule façon qu'il me permet de télécharger le fichier.

J'ai essayé (juste pour le plaisir de rétrécissement en bas de mon problème) pour spécifier des listes spécifiques comme ceci:

    <property name="ListsOverride" type="string">
<![CDATA[<Lists><List Id="{5a2f79bb-cc82-4171-88ac-65f20e7b5fa8}" /></Lists>]]>

Qui ne se casse pas la page, mais la partie web me donne moins utile d'erreur sur la page (Impossible d'afficher cette Partie Web)

Je ne suis pas sûr à 100% que j'ai utilisé le GUID approprié dans cette tentative. Je l'ai eu à partir de la recherche dans l'explorateur de serveurs dans Visual Studio (selon les Listes et les Bibliothèques >> les Bibliothèques de documents >> Ma Liste Type. (J'ai eu le GUID de la propriété Id)

Je dois préciser que je suis assez nouveau dans le développement Sharepoint. J'aurais espéré que quelque chose d'apparemment base de Sharepoint ne serait d'autant plus facile que cela.

Quelqu'un peut s'il vous plaît signaler ce que je fais de mal? Je vais peut-être sujet de la chose entière dans le mauvais sens? J'apprécie toute l'aide que quelqu'un peut me donner!

InformationsquelleAutor Mr Miller | 2011-08-03