2009-07-13 12 views
1

Wir haben ein Problem mit der Einführung von Inhaltstypen mit Funktionen. Wie führt man sie in der SharePoint-Farm aus und aktualisiert die Datenbank gleichzeitig? Im Moment können wir es nicht herausfinden. Gibt es etwas, das individuell gemacht werden muss?MOSS 2007 Inhaltstypen - Farmweite Anwendung

Antwort

0

Mit "Update der Datenbank" würde ich davon ausgehen, dass Sie Ihre benutzerdefinierte Datenbank, keine der SharePoint-Datenbanken bedeuten?

Richten Sie Ihre Datenbank so aus, dass Sie über einen Mechanismus zum Speichern der Version verfügen. In seiner einfachsten Form wäre eine Konfigurationstabelle mit einer Version row/column ausreichend. Sie können im Feature-aktivierten Ereignis Code einfügen, der die Version Ihrer Datenbank überprüft und bei Bedarf benutzerdefinierte T-SQL-Skripts ausführt, die Ihre Datenbank aktualisieren.

0

Inhaltstypen können beim Bereitstellen schwer verständlich sein. Sobald Sie den Inhaltstyp über ein Feature bereitgestellt haben und jemand diesen Inhaltstyp verwendet (z. B. eine Sharepoint-Liste, ein Dokument, ein Seitenlayout usw.), können Sie den Inhaltstyp NICHT aktualisieren, indem Sie das Feature erneut bereitstellen. Das ist Absicht. Wenn eine Liste einen Inhaltstyp hinzufügt, erstellt sie eine Kopie des Inhaltstyps in der Websitesammlung.

Es gibt zwei Möglichkeiten, dieses Problem zu lösen:

  1. Aktualisieren Sie den Inhaltstyp in GUI und überprüfen Sie „alle Arten Kind Inhalt aktualisieren“
  2. Erstellen Sie eine neue Funktion „Update Inhaltstyp x-Funktion“. Fügen Sie der Featureaktivierung einen Ereignishandler hinzu, und aktualisieren Sie den Inhaltstyp in der Websitesammlung, indem Sie die contentType.update (true) -Methode anwenden. Um zu überprüfen, ob alle untergeordneten Inhaltstypen aktualisiert wurden, erstellen Sie ein SPQuery-Objekt mit einem beginswith-Parameter für die Inhaltstyp-ID.
Verwandte Themen