Aggiungi il tipo di contenuto dalla soluzione di sandboxed alla definizione dell'elenco (soluzione agricola) non funziona

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/52239

Domanda

Sto usando una soluzione sandboxed da un fornitore di terze parti che contiene alcune colonne del sito e un tipo di contenuto del sito.

Voglio aggiungere questo tipo di contenuto alla mia definizione della biblioteca dei documenti in caml.
Ma quando aggiungo un riferimento a questo tipo di contenuto nel mio Schema.xml come questo:

<List ... EnableContentTypes="TRUE">
 <MetaData>
  <ContentTypes>
   <ContentTypeRef ID="0x0101002EFF4F6709F446E5AD064DC20BBE6855" />
   <!--contenttypeid of content type from sandboxed solution-->
   <ContentTypeRef ID="0x0101" />
   <!--contenttypeid of Document-->
   ...
  </ContentTypes>
  ...
 </MetaData>
</List>
.

Il tipo di contenuto non viene aggiunto alla mia libreria quando creo un'istanza di esso. (Ho creato questa libreria di documenti dopo che la soluzione di sandboxed è stata attivata ovviamente)
Peggio ancora peggio, ricevo il seguente messaggio di errore:

.

È stato trovato un nome tipo di contenuto duplicato "Documento".

Ho motivi per credere che questo sia dovuto al fatto che SP in qualche modo non riesce a trovare il tipo di contenuto di sandbox e pensa che sia un tipo di documento di contenuto figlio. Quindi aggiunge il tipo di contenuto del documento due volte all'elenco con questo messaggio di errore di conseguenza.

Non capisco perché non aggiunga il tipo di contenuto dalla soluzione sandboxed?

Dopotutto posso vedere questo tipo di contenuto nella galleria dei tipi di contenuto del sito (raccolta) e sono in grado di aggiungere il tipo di contenuto tramite l'interfaccia utente alla stessa libreria di documenti senza un riferimento a questo tipo di contenuto "sandboxed".

Aggiornamento: Ho provato a aggiungere solo il tipo di contenuto dei venditori di terze parti alla definizione della libreria documenti e ora viene aggiunta solo 1 tipo di testo "Document".

In realtà crea un tipo di contenuto elenco chiamato "Document" che eredita dal tipo di contenuto del sito del fornitore del venditore di terze parti.

Quindi viene visualizzata la seguente elenco Informazioni sul tipo di contenuto:

    .
  • Nome: documento
  • Descrizione: Crea un nuovo documento
  • Parent: {Type del contenuto del sito del fornitore del venditore della terza parte}

    E le colonne del sito dal tipo di contenuto del sito sono state copiate.
    Sfortunatamente non aggiorna il nome del tipo di contenuto elenco.

    Si prega di condividere qualsiasi indizio che potresti avere ...

È stato utile?

Soluzione

It seems that list has its own internal content type or at the very least, its own set of fields, which is creating the problem. Try investigating the list with the SharePoint Manager 2007/2010.

The alternative approach could be to use ContentTypeBinding element to bind multiple ContentTypes.

<ContentTypeBinding 
      ContentTypeId="0x010100AA8705BBBC554342BC1396AB7FB723B401" 
      ListUrl="MyDocLibrary"  
/> 
<ContentTypeBinding 
      ContentTypeId="0x010100AA8705BBBC554342BC1396AB7FB723B402" 
      ListUrl="MyDocLibrary" 
/> 
<ContentTypeBinding 
      ContentTypeId="0x010100AA8705BBBC554342BC1396AB7FB723B403" 
      ListUrl="MyDocLibrary" 
 /> 

ContentTypeBinding elements that are responsible for linking the multiple content types share a common parent i.e. 0x0101, which means ancestor of this type is the base Document content type.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top