Domanda

Sto cercando di aggiungere un WebPart Listview alla mia pagina predefinita della mia soluzione di sandboxed per SharePoint 2013 in Office 365.

Sto usando un file ONET per definire il mio WebTemplate in base al modello STS. Tra le altre funzionalità ho attivato la funzione di pubblicazione. Nell'uso di una funzione Web con un file di elementi che fornisce la pagina predefinita.

Overtion funziona bene, posso persino aggiungere un webpart di listview a questa pagina che mostra il contenuto dell'elenco dei documenti predefiniti.

Tuttavia, sembra che con ogni altro elenco (compiti, calendario, ..) provo a mostrare in un elemento di visualizzazione nella mia pagina predefinita, mi impedisce di creare il sito.

Ho provato diversi approcci:

Aggiunta fisicamente L'elenco del calendario agli elenchi (modifica del percorso di elenco in file ONET):

<View List="Lists/Calendar" 
        Name="Calendar"
        BaseViewID="0" 
        WebPartZoneID="TopLeftRow" 
        WebPartOrder="0"/>
.

Aggiunta dell'elenco del calendario senza elenchi:

<View List="Calendar" 
        Name="Calendar"
        BaseViewID="0" 
        WebPartZoneID="TopLeftRow" 
        WebPartOrder="0"/>
.

Con il file di risorsa:

<View List="$Resources:core,calendarList;" 
       BaseViewID="0" 
       WebPartZoneID="TopLeftRow" 
       WebPartOrder="0" />
.

Con Body XML:

<View List="Lists/Calendar" BaseViewID="0" WebPartZoneID="TopLeftRow" WebPartOrder="1">
    <![CDATA[<webParts>
          <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
              <metaData>
                  <type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart,Microsoft.SharePoint,Version=15.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" />
                  <importErrorMessage>Cannot import this Web Part.</importErrorMessage>
              </metaData>
              <data>
                  <properties>
                      <property name="Title" type="string">Calendar</property>
                      <property name="DisableViewSelectorMenu" type="bool">True</property>
                      <property name="InplaceSearchEnabled" type="bool">False</property>
                      <property name="ShowToolbarWithRibbon" type="bool">False</property>
                      <property name="ChromeType" type="chrometype">TitleOnly</property>
                  </properties>
              </data>
          </webPart>
      </webParts>]]>
  </View>
.

Nessuno di questi approcci sembra funzionare. Sto facendo qualcosa di sbagliato qui?

Aggiornamento Sembra essere un problema di temporizzazione. Quando disabilito la funzione che fornisce la pagina predefinita e abilitalo a mano funziona utilizzando questo:

<View BaseViewID="2" List="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;" WebPartZoneID="TopRightRow" DefaultView="TRUE" Type="CALENDAR" WebPartOrder="1" >
    <![CDATA[ 
      <WebPart xmlns="http://schemas.microsoft.com/WebPart/v2"> 
      <Assembly>Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c</Assembly>          
      <TypeName>Microsoft.SharePoint.WebPartPages.ListViewWebPart</TypeName> 
      <Title>Calendar</Title>                          
      </WebPart>]]>
  </View>
.

Qualche idea come posso risolvere questo problema, per quanto riguarda l'uso di un webtemplate in una soluzione Sandbox?

È stato utile?

Soluzione

Prima crea l'elenco che stai tentando di fare riferimento nel ricevitore funzione aggiunto al file onet.xml.Quindi creare la web part della vista elenco come hai fatto nel onet.xml.

Ciò comporterà il tuo elenco di essere lì quando si sta tentando di rivolgerlo creando la web part della visualizzazione elenco.

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