Frage

Ich versuche, meiner Standardseite meiner Sandkastenlösung für SharePoint 2013 in Office 365 ein Listenansicht-Webpart hinzuzufügen.

Ich verwende eine ONET-Datei, um meine Webvorlage basierend auf der STS-Vorlage zu definieren.Unter anderem habe ich die Veröffentlichungsfunktion aktiviert.Darin verwende ich eine Webfunktion mit einer Elementdatei, die die Standardseite bereitstellt.

Alles funktioniert gut, ich kann dieser Seite sogar ein Listview-Webpart hinzufügen, das den Inhalt der Standarddokumentenliste anzeigt.

Es scheint jedoch, dass mich jede andere Liste (Aufgaben, Kalender usw.), die ich versuche, in einem Ansichtselement auf meiner Standardseite anzuzeigen, daran hindert, die Site zu erstellen.

Ich habe mehrere Ansätze ausprobiert:

Physisches Hinzufügen der Kalenderliste zu Listen (Listenpfad in ONET-Datei ändern):

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

Hinzufügen der Kalenderliste ohne Listen:

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

Mit Ressourcendatei:

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

Mit 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>

Keiner dieser Ansätze scheint zu funktionieren.Mache ich hier etwas falsch?

AktualisierenEs scheint ein Timing-Problem zu sein.Wenn ich die Funktion, die die Standardseite bereitstellt, deaktiviere und manuell aktiviere, funktioniert es wie folgt:

<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>

Irgendeine Idee, wie ich das beheben kann, was die Verwendung einer Webvorlage in einer Sandbox-Lösung betrifft?

War es hilfreich?

Lösung

Erstellen Sie zunächst die Liste, auf die Sie in dem Feature-Receiver verweisen möchten, den Sie Ihrem hinzugefügt haben onet.xml Datei.Erstellen Sie dann das Listenansicht-Webpart wie in Ihrem onet.xml.

Dies führt dazu, dass Ihre Liste vorhanden ist, wenn Sie versuchen, darauf zu verweisen, indem Sie das Listenansicht-Webpart erstellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit sharepoint.stackexchange
scroll top