Attivazione funzionalità di SharePoint: il valore non rientra nell'intervallo previsto

StackOverflow https://stackoverflow.com/questions/1627841

  •  06-07-2019
  •  | 
  •  

Domanda

Ho iniziato a scrivere una semplice funzione per creare una colonna del sito e un tipo di contenuto. Se provo ad attivare la funzionalità in quanto tale, mi dà l'errore Il valore non rientra nell'intervallo previsto e niente di più utile. Se rimuovo il tag ContentType, la funzione si attiva bene e posso vedere la colonna del sito Account appena creata. Hai idea di quale sia l'errore con ContentType?

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <Field
     ID="{345C9562-F0D9-4327-853B-5072E296823A}" 
     Name="Account"
     DisplayName="Account" 
     Type="Text" 
     Group="Accounts">
    </Field>
    <ContentType
     ID="0X010100"
     Name="Account Doc"
     Description="Account Doc"
     Version="0"
     Group="Account Types">
        <FieldRefs>
            <FieldRef 
              ID="{345C9562-F0D9-4327-853B-5072E296823A}"
              Name="Account"
              DisplayName="Account" />
        </FieldRefs>
    </ContentType>
</Elements>
È stato utile?

Soluzione

Si scopre che SharePoint non era soddisfatto del 00 finale nell'attributo ID del tag ContentType. Il passaggio a 01 ha risolto il problema o l'aggiunta di un GUID alla fine anche dopo lo 00 ha funzionato:

<ContentType
 ID="0x010100C8813FB7C4814B44BA7FD679120EF6F5"
 Name="Account Doc"
 Description="Account Doc"
 Version="0"
 Group="Account Types">
    <FieldRefs>
        <FieldRef 
          ID="{345C9562-F0D9-4327-853B-5072E296823A}"
          Name="Account"
          DisplayName="Account" />
    </FieldRefs>
</ContentType>

Altri suggerimenti

Potrebbe essere la "X" maiuscola nel tuo ID tipo di contenuto? Quelli incorporati sono minuscoli, quindi potrebbe essere qualcosa da guardare.

I log del server ti danno qualche indizio su ciò che SharePoint sta cercando ma non riesci a trovare qui?

Ho avuto un messaggio di errore simile quando ho usato un GUID generato in cui avevo dimenticato di rimuovere i trattini da (ovvero usando 0x0100042061F1-2366-45d8-A7DE-5B5078E87080 invece di 0x0100042061F1236645d8A7DE5B5078E87080)

Per ulteriori informazioni sugli ID dei tipi di contenuto, consultare l'SDK di WSS 3.0 o questo articolo MSDN: http://msdn.microsoft.com/en-us/library/aa543822.aspx

Nel mio caso, avevo un tipo di contenuto semplice basato sul tipo di attività con un campo personalizzato aggiuntivo. La distribuzione di vsewss è un tale hack che non è stato possibile impacchettare o distribuire la soluzione. Dal momento che è una distribuzione così semplice, ho appena scritto un file batch con i comandi stsadm per farlo.

Esempi di file batch per l'installazione di funzioni sono disponibili nella pagina MVP di andrew connell. Hai appena rimuovere e ricreare la directory per la funzione nella directory delle funzioni sp (12 hive \ template \ features \) copiare la funzione e manifestare i file lì cd alla directory 12 hive \ bin stsadm -o activeceature -filename \ feature.xml -force stsadm -o activateature -filename \ feature.xml -url iisreset

Questo non è ancora fallito. Non posso dire lo stesso per vsewss o qualsiasi altra utilità di pacchetto di where-ever-plex

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top