Freigeben über


Benutzerdefinierte Einstellungsseiten für die Konverterkonfiguration

Letzte Änderung: Montag, 8. März 2010

Gilt für: SharePoint Server 2010

Wenn der benutzerdefinierte Dokumentkonverter eine benutzerdefinierte Konfigurationsschnittstelle benötigt, können Sie zu diesem Zweck eine benutzerdefinierte ASPX-Seite angeben. Diese Seite ersetzt die Standardeinstellungsseite für die Dokumentkonfiguration in Microsoft SharePoint Server 2010.

HinweisHinweis

Wenn Sie nur während der Konfiguration zusätzliche Informationen vom Administrator einholen müssen, können Sie ein benutzerdefiniertes ASCX-Steuerelement auf der Standardeinstellungsseite für die Dokumentkonfiguration in SharePoint Server 2010 einbetten. Bei diesem Ansatz können Sie die Standardeinstellungsseite für die Dokumentkonverterkonfiguration verwenden, anstatt ein Ersatzformular entwickeln zu müssen. Weitere Informationen finden Sie unter Weitere Steuerelemente mit Konvertereinstellungen.

Administratoren können mithilfe dieser benutzerdefinierten Seite die Konfigurationseinstellungen für jeden Inhaltstyp angeben, der den Konverter verwendet. Diese inhaltstypspezifischen Konvertereinstellungen werden an den Dokumentkonverter übergeben, wenn der Benutzer ein Dokument dieses Inhaltstyps konvertiert. Die Standardeinstellungsseite für die Konverterkonfiguration, die in SharePoint Server 2010 enthalten ist, enthält Code, der die inhaltstypspezifischen Konvertereinstellungen übergibt.

Zum Angeben einer benutzerdefinierten Einstellungsseite für die Konverterkonfiguration legen Sie das ConverterSettingsForContentType-Element der Dokumentkonverterdefinition auf den Dateinamen der gewünschten ASPX-Seite fest. Es handelt sich hier um ein optionales Element; wenn Sie es nicht in die Konverterdefinition einschließen, steht für diesen Konverter keine Konverterkonfigurationsseite zur Verfügung.

Weitere Informationen zur Dokumentkonverterdefinition finden Sie unter Schema für die Dokumentkonverterdefinition.

Wenn ein Benutzer zur Einstellungsseite für die Konverterkonfiguration navigiert, werden die folgenden Informationen in SharePoint Server 2010 an die Seite übergeben:

  • ctype   Stellt den Inhaltstypbezeichner (ID) des Inhaltstyps dar, für den der Benutzer diesen Konverter konfigurieren möchte.

  • Converter   Stellt die GUID des Konverters dar, den der Benutzer konfigurieren möchte.

  • OriginalSource   Stellt die URL der Seite dar, auf der der Benutzer mit der Navigation begonnen hat. Dieser Parameter wird in diesem Kontext nicht verwendet und kann ignoriert werden.

    Zum Beispiel:

    http://example-ts/_layouts/ConverterSettings.aspx?ctype=0x0101&Converter=6dfdc5b4%2D2a28%2D4a06%2Db0c6%2Dad3901e3a807&OriginalSource=http%3A%2F%2Fexample%2Dts%2FDocuments%2FForms%2FAllItems%2Easpx

    Die angegebene Seite muss Code für die folgende Aktion enthalten:

    1. Formatieren Sie die von der Seite in einem XML-Dokument gesammelten Konfigurationseinstellungen.

      Damit der Konverter die erforderlichen Konfigurationsdaten für die Nachverarbeitung der Dokumentkonvertierung bereitstellt, muss er die Konfigurationseinstellungen im angegebenen Inhaltstyp nach dem folgenden Schema speichern.

      <rca:RCAuthoringProperties xmlns:rca="urn:sharePointPublishingRcaProperties">
        <rca:Converter rca:guid="6dfdc5b4-2a28-4a06-b0c6-ad3901e3a807">
          <rca:property rca:type="InheritParentSettings">True</rca:property>
          <rca:property rca:type="SelectedPageLayout">30</rca:property>
          <rca:property rca:type="SelectedPageField">f55c4d88-1f2e-4ad9-
            aaa8-819af4ee7ee8</rca:property>
          <rca:property rca:type="SelectedStylesField">a932ec3f-94c1-48b1-
            b6dc-41aaa6eb7e54</rca:property>
          <rca:property 
            rca:type="CreatePageWithSourceDocument">True</rca:property>
          <rca:property 
            rca:type="AllowChangeLocationConfig">True</rca:property>
          <rca:property rca:type="ConfiguredPageLocation"></rca:property>
          <rca:property rca:type="CreateSynchronously">True</rca:property>
          <rca:property 
            rca:type="AllowChangeProcessingConfig">True</rca:property>
          <rca:property rca:type="ConverterSpecificSettings"></rca:property>
        </rca:Converter>
      </rca:RCAuthoringProperties>
      

      Im vorhergehenden Beispiel stellen die Elemente die verschiedenen Optionen dar, die auf der Standardeinstellungsseite für die Konverterkonfiguration zur Verfügung stehen. Das ConverterSpecificSettings-Element stellt die Konfigurationseinstellungen des konverterspezifischen ASCX-Steuerelements dar, sofern vorhanden. Weitere Informationen finden Sie unter Weitere Steuerelemente mit Konvertereinstellungen. Das ConfiguredPageLocation-Element ist leer, wodurch angegeben wird, dass die aktuelle Website von SharePoint Server 2010 verwendet werden sollte.

    2. Schreiben Sie diese Konfigurations-XML als XMLDocument-Knoten in die entsprechende Inhaltstypdefinition.

      Im folgenden Code wird beispielsweise die Inhaltstypdefinition der Website aktualisiert, nachdem das, wie weiter oben veranschaulicht, entsprechende XML-Dokument erstellt wurde.

      // Delete the previous instance of this document if it already exists.
      myContentType.XmlDocuments.Delete(RcaPropertiesNamespaceUri);
      myContentType.XmlDocuments.Add(this.myXmlDocument);
      myContentType.Update();
      
      ' Delete the previous instance of this document if it already exists.
      myContentType.XmlDocuments.Delete(RcaPropertiesNamespaceUri)
      myContentType.XmlDocuments.Add(Me.myXmlDocument)
      myContentType.Update()
      

Bei den Konfigurationseinstellungsdaten kann es sich um beliebigen wohlgeformten XML-Code handeln, der vom Dokumentkonverter analysiert werden kann. SharePoint Server 2010 analysiert die eigentlichen Informationen zwar nicht, ermöglicht es Ihnen jedoch, den XML-Code in der Inhaltstypdefinition zu speichern, sodass sie später an den Dokumentkonverter übergeben werden können.

Wenn Sie eine Einstellungsseite für die Konverterkonfiguration angeben, müssen Sie auch eine benutzerdefinierte ASPX-Seite für die Benutzeroberfläche zum Aufrufen dieses Dokumentkonverters angeben. Von der Standardseite zum Aufrufen von Dokumentkonvertierungen werden keine Konfigurationseinstellungen an die ausgewählten Konverter übergeben. Weitere Informationen hierzu finden Sie unter Benutzerdefinierte Seiten mit Konvertierungseinstellungen.

Hosten eines benutzerdefinierten Steuerelements für Konvertereinstellungen

Zum Aktivieren von benutzerdefinierten Steuerelementen für Konvertereinstellungen muss die Seite, die den Dokumentkonverter aufruft, entsprechenden Code enthalten.

So wird beispielsweise durch den folgenden Code, eingefügt in die OnLoad-Funktion der Seite, der Seite ein benutzerdefiniertes Steuerelement für Konvertereinstellungen hinzugefügt, wenn ein benutzerdefiniertes Steuerelement angegeben wird.

Im folgenden Beispiel werden zwei Elemente in der CodeBehind-Datei benötigt:

  • Ein Element namens customControl vom Typ System.Web.UI.Control

  • Ein Element namens customConverterControl vom Typ System.Web.UI.WebControls.PlaceHolder sowie ein entsprechender Platzhalter auf der ASPX-Seite

    if (!String.IsNullOrEmpty(myTransformer.ConverterSpecificSettingsUI))
    {
      this.customControl = 
        LoadControl(myTransformer.ConverterSpecificSettingsUI);
      this.customConverterControl = this.customControl as 
        IDocumentConverterControl;
      if (this.customConverterControl != null)
      {
        this.converterSpecificControl.Controls.Add(this.customControl);
      }
    }
    
    If Not String.IsNullOrEmpty(myTransformer.ConverterSpecificSettingsUI) Then
      Me.customControl = LoadControl(myTransformer.ConverterSpecificSettingsUI)
      Me.customConverterControl = TryCast(Me.customControl, IDocumentConverterControl)
      If Me.customConverterControl IsNot Nothing Then
    Me.converterSpecificControl.Controls.Add(Me.customControl)
      End If
    End If
    

    Als Nächstes wendet der Code die vorhandenen Einstellungen des benutzerdefinierten Steuerelements für Konvertereinstellungen an.

    // Set up the converter-specific control and retrieve the settings.
    if (this.customConverterControl != null)
    {
      this.customConverterControl.ContentType = this.CurrentContentType;
      this.customConverterControl.ConverterSettings = 
          this.effectiveRcaProperties.ConverterSpecificSettings; 
    }
    
    ' Set up the converter-specific control and retrieve the settings.
    If Me.customConverterControl IsNot Nothing Then
      Me.customConverterControl.ContentType = Me.CurrentContentType
      Me.customConverterControl.ConverterSettings = Me.effectiveRcaProperties.ConverterSpecificSettings
    End If
    

    Im folgenden Codebeispiel, eingefügt in die OnOK-Funktion der Seite, werden die benutzerdefinierten Konvertereinstellungen für die Inhaltstypdefinition der Website beibehalten. Beachten Sie, dass der Inhaltstyp durch den Code so festgelegt wird, dass dem Steuerelement zusätzliche Kontextinformationen bereitgestellt werden.

    // Persist the converter-specific settings.
    if (this.converterSpecificControl.Controls.Count > 0)
    {
      if (this.customConverterControl != null)
      {
        this.customConverterControl.ContentType = this.CurrentContentType;
        this.myRcaProperties.ConverterSpecificSettings = 
          this.customConverterControl.ConverterSettings; 
    // Store this string in the content type properties as converter specific settings.
      }
    }
    
    ' Persist the converter-specific settings.
    If Me.converterSpecificControl.Controls.Count > 0 Then
      If Me.customConverterControl IsNot Nothing Then
    Me.customConverterControl.ContentType = Me.CurrentContentType
    Me.myRcaProperties.ConverterSpecificSettings = Me.customConverterControl.ConverterSettings
    ' Store this string in the content type properties as converter specific settings.
      End If
    End If
    

Siehe auch

Konzepte

Übersicht über Dokumentkonverter

Dokumentkonverter

Bereitstellung von Dokumentkonvertern

Schema für die Dokumentkonverterdefinition

Weitere Steuerelemente mit Konvertereinstellungen

Benutzerdefinierte Seiten mit Konvertierungseinstellungen