Freigeben über


Vorgehensweise: Hinzufügen von Elementen zu einem vorhandenen Feature

Letzte Änderung: Dienstag, 21. September 2010

Gilt für: SharePoint Foundation 2010

Ein Basisszenario für ein Featureupgrade umfasst aller Wahrscheinlichkeit nach die im folgenden Verfahren aufgeführten Schritte, mit denen neue Elemente zu einem vorhandenen Feature hinzugefügt werden.

Hinzufügen neuer Elemente zu einem vorhandenen Feature

  1. Fügen Sie ein Version-Attribut zu Feature.xml hinzu, falls dieses Attribut noch nicht vorhanden ist, und legen Sie das Attribut auf einen geeigneten Wert fest, beispielsweise Version="2.0.0.0", wenn die vorhanden Version 1.0.0.0 ist. Wenn Sie die Versionsnummer nicht erhöhen, wird der Code für das Featureupgrade nicht aufgerufen.

  2. Fügen Sie einen <UpgradeActions>-Abschnitt zur Datei Feature.xml hinzu.

  3. Erstellen Sie eine neue Version der Datei Elements.xml, die alle neuen Elemente enthält, die Sie dem Feature hinzufügen, und weisen Sie ihr einen eindeutigen Namen zu, beispielsweise Elements2.xml.

  4. Verweisen Sie, wie im folgenden Beispiel gezeigt, sowohl im <ElementManifests>-Hauptabschnitt als auch im <ApplyElementManifests>-Abschnitt innerhalb des <UpgradeActions>-Abschnitts auf die Datei Elements2.xml.

    <Feature Id="712224F9-6708-4965-A18C-B73CA86AEFCA"
      Title="MyCoolFeature" 
      Description="My cool feature." 
      Version="2.0.0.0"
      Scope="Site" 
      Hidden="FALSE"
      DefaultResourceFile="core"
      xmlns="https://schemas.microsoft.com/sharepoint/">
      <ElementManifests>
        <ElementManifest Location="Elements.xml" />
        <ElementManifest Location="Elements2.xml" />
      </ElementManifests>
      <UpgradeActions
        <VersionRange EndVersion="2.0.0.0">
        <ApplyElementManifests>
          <ElementManifest Location="Elements2.xml" />
          </ApplyElementManifests>
        </VersionRange>
      </UpgradeActions>
    </Feature>
    

Wenn Sie das Version-2-Feature aktivieren, werden alle Elemente sowohl in Elements.xml als auch in Elements2.xml bereitgestellt. Wenn Sie das Upgrade für die Serverfarm ausführen, führt die Featureupgradeinfrastruktur eine Abfrage im Hinblick auf alle Instanzen des Features aus, die eine Versionsnummer kleiner als 2.0.0.0 aufweisen; alle Elemente in der Datei Elements2.xml werden schrittweise für die vorhandene Version-1-Featureinstanzen bereitgestellt. Falls keine Fehler auftreten, wird die Featureversionsnummer in der Datenbank aktualisiert. Falls beim Aktualisieren einer bestimmten Instanz des Version-1-Features ein Fehler auftritt, wird die Featureinstanz übersprungen, und die Versionsnummer wird in der Datenbank nicht aktualisiert. Bei nachfolgenden Farmaktualisierungen wird erkannt, dass die Featureinstanz nicht aktualisiert wurde, und es wird erneut versucht, die Featureinstanz zu aktualisieren.