Share via


Erstellen benutzerdefinierter Listendefinitionen in SharePoint 2010

SharePoint-Schnellstartbanner
Erste Schritte mit der Webentwicklung in SharePoint 2010: Informationen zum Erstellen einer benutzerdefinierten Listendefinition in SharePoint 2010 und zum Anfügen eines Ereignisempfängers.

Letzte Änderung: Mittwoch, 12. Januar 2011

Gilt für: SharePoint Foundation 2010 | SharePoint Server 2010 | Visual Studio | Visual Studio 2010

In dieser Übung erstellen Sie eine benutzerdefinierte Listendefinition in Microsoft SharePoint 2010 und erstellen anschließend einen Ereignisempfänger, der bei Verwendung der Liste ausgelöst wird. Für diese Aufgabe müssen Sie die folgenden Schritte ausführen:

  • Erstellen eines SharePoint-Listendefinitionsprojekts

  • Anpassen der SharePoint-Listendefinition

  • Testen der Projektmappe

Erstellen eines SharePoint-Listendefinitionsprojekts

Für diese Aufgabe erstellen Sie ein SharePoint 2010-Listendefinitionsprojekt in Microsoft Visual Studio 2010.

So erstellen Sie das SharePoint-Projekt

  1. Klicken Sie zum Starten von Visual Studio 2010 im Startmenü auf Alle Programme, klicken Sie auf Microsoft Visual Studio 2010, und klicken Sie dann auf Microsoft Visual Studio 2010.

  2. Zeigen Sie im Menü Datei auf Neu, und klicken Sie dann auf Projekt.

  3. Klicken Sie im Dialogfeld Neues Projekt im Abschnitt Installierte Vorlagen auf Visual C#, klicken Sie auf SharePoint, und klicken Sie dann auf 2010.

  4. Klicken Sie in den Projektelementen auf Listendefinition.

  5. Geben Sie im Feld Name die Bezeichnung Bugs ein, und klicken Sie dann auf OK.

  6. Geben Sie im Assistenten zum Anpassen von SharePoint die lokale Website ein, die Sie für diese Übung verwenden möchten (z. B. https://localhost/SampleWebSite).

  7. Wählen Sie Als Farmlösung bereitstellen für die Vertrauensebene aus, und klicken Sie dann auf Weiter.

  8. Geben Sie im Feld Wie lautet der Anzeigename der Listendefinition? die Bezeichnung Bugs ein.

  9. Wählen Sie in der Dropdownliste Welchen Typ weist die Listendefinition auf? die Option Benutzerdefinierte Liste aus.

  10. Aktivieren Sie das Kontrollkästchen Fügt eine Listeninstanz für diese Listendefinition hinzu, und klicken Sie anschließend auf Fertig stellen.

Anpassen der SharePoint-Listendefinition

Für diese Aufgabe führen Sie die Schritte zum Anpassen der Projektvorlage Listendefinition aus, indem Sie den Listennamen, den darin gespeicherten Inhaltstyp sowie die Felder, die im neuen Formular, Bearbeitungsformular und Anzeigeformular angezeigt werden, ändern.

So passen Sie die Listendefinition an

  1. Erweitern Sie im Projektmappen-Explorer den Knoten ListInstance1, und öffnen Sie dann die Datei Elements.xml.

  2. Ändern Sie im ListInstance-Element das Title-Attribut in Bugs, und ändern Sie das TemplateType-Attribut in 10001.

  3. Öffnen Sie im Projektmappen-Explorer, vor Schema.xml, die Datei Elements.xml.

  4. Ändern Sie im ListTemplate-Element das Type-Attribut in 10001, und fügen Sie das DisallowContentTypes=”FALSE”-Attribut hinzu.

  5. Fügen Sie wie in Abbildung 1 dargestellt in der Datei Elements.xml den folgenden XML-Code am Anfang des Elements-Elements ein. Dieser XML-Code beschreibt den von der Liste gespeicherten Bug Item-Inhaltstyp.

    <!-- Describes content types. -->
    <ContentType
      ID="0x010089E3E6DB8C9B4B3FBB980447E313CE94"
      Name="Bug Item"
      Group="Custom Content Types"
      Description="Bug item content type."
      Version="0">
      <FieldRefs>
        <FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" />
        <FieldRef ID="{cb55bba1-81a9-47b6-8e6c-6a7da1d25602}" />
        <FieldRef ID="{0248c82f-9136-4b3a-b802-d0b77280b3bc}" />
        <FieldRef ID="{aa4a82dd-5b32-4507-9874-4e1c7bca3279}" />
      </FieldRefs>
    </ContentType>
    <!--  End describes content types. --> 
    
  6. Fügen Sie wie in Abbildung 1 dargestellt in der Datei Elements.xml den folgenden XML-Code am Anfang des Elements-Elements ein. Dieser XML-Code beschreibt die vom Bug Item-Inhaltstyp verwendeten Felder.

    <!-- Describes fields in bug list. -->
    <Field Type="Note" DisplayName="Description" Required="FALSE" NumLines="6" RichText="FALSE" Sortable="FALSE" ID="{cb55bba1-81a9-47b6-8e6c-6a7da1d25602}" StaticName="BugDescription" Name="BugDescription" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Project" Required="FALSE" MaxLength="255" ID="{0248c82f-9136-4b3a-b802-d0b77280b3bc}" StaticName="BugProject" Name="BugProject" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Assigned To" Required="FALSE" MaxLength="255" ID="{aa4a82dd-5b32-4507-9874-4e1c7bca3279}" StaticName="BugAssignedTo" Name="BugAssignedTo" Group="Custom Columns" />
    <!-- End describes fields in bug list. -->
    

    Abbildung 1. Die Datei "Elements.xml" nach dem Einfügen der beiden Codeabschnitte

    Datei 'Elements.xml' nach dem Einfügen von Code

  7. Öffnen Sie im Projektmappen-Explorer die Datei Schema.xml.

  8. Fügen Sie das EnableContentTypes=”TRUE”-Attribut dem List-Element in der Datei Schema.xml hinzu.

  9. Fügen Sie wie in Abbildung 2 dargestellt in der Datei Schema.xml den folgenden XML-Code im ContentTypes-Element ein. Dieser XML-Code beschreibt den von der Liste gespeicherten Bug Item-Inhaltstyp.

    <!-- Start Add. -->
    <ContentTypeRef ID="0x010089E3E6DB8C9B4B3FBB980447E313CE94" />
    <!-- End Add. -->
    
  10. Fügen Sie wie in Abbildung 2 dargestellt den folgenden XML-Code im Fields-Element ein. Dieser XML-Code beschreibt die von der Liste gespeicherten Felder. Sie stehen in direktem Bezug zu den Feldern im Inhaltstyp, den Sie im vorherigen Schritt hinzugefügt haben.

    <!-- Start Add. -->
    <Field Type="Note" DisplayName="Description" Required="FALSE" NumLines="6" RichText="FALSE" Sortable="FALSE" ID="{cb55bba1-81a9-47b6-8e6c-6a7da1d25602}" StaticName="BugDescription" Name="BugDescription" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Project" Required="FALSE" MaxLength="255" ID="{0248c82f-9136-4b3a-b802-d0b77280b3bc}" StaticName="BugProject" Name="BugProject" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Assigned To" Required="FALSE" MaxLength="255" ID="{aa4a82dd-5b32-4507-9874-4e1c7bca3279}" StaticName="BugAssignedTo" Name="BugAssignedTo" -Group="Custom Columns" />
    <!-- End Add. -->
    

    Abbildung 2. Die Datei "Schema.xml" nach dem Einfügen des Codes für "ContentTypeRefs" und "Fields"

    Datei 'Schema.xml' nach dem Einfügen des Elements 'ContentTypeRefs'

  11. Fügen Sie wie in Abbildung 3 dargestellt in der zweiten Ansicht den folgenden XML-Code im ViewFields-Element ein, wobei Folgendes gilt: BaseViewID="1". Dieser XML-Code beschreibt, welche Felder in dieser speziellen Ansicht sichtbar sein sollen. BaseView 1 ist als Standardansicht festgelegt. In dieser Ansicht sollten die neu erstellten Felder angezeigt werden.

    <!-- Start Add. -->
    <FieldRef Name="BugDescription"></FieldRef>
    <FieldRef Name="BugProject"></FieldRef>
    <FieldRef Name="BugAssignedTo"></FieldRef>
    <!-- End Add. -->
    

    Abbildung 3. Die Datei "Schema.xml" nach dem Einfügen von XML-Code für "Fields"

    Datei 'Schema.xml' nach dem Einfügen von Felder-XML

  12. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Knoten Bugs, und klicken Sie dann auf Bereitstellen.

Testen der Projektmappe

Für diese Aufgabe testen Sie die Projektmappe, indem Sie der Liste Bugs einen Bug hinzufügen.

So fügen Sie der Liste "Bugs" ein Element hinzu

  1. Öffnen Sie die zuvor angegebene Website.

  2. Klicken Sie auf der Homepage im linken Navigationsbereich auf die Liste Bugs.

  3. Klicken Sie auf der Registerkarte Listentools auf Elemente, und klicken Sie dann wie in Abbildung 4 dargestellt in der Dropdownliste Neues Element auf Bug Item.

    Abbildung 4. "Bug Item" in der Dropdownliste "Neues Element"

    Fehlerelement aus der Liste für neue Elemente

    Das Dialogfeld Bugs – Neues Element wird wie in Abbildung 5 dargestellt angezeigt.

    Abbildung 5. Dialogfeld "Bugs – Neues Element"

    Dialogfeld für neues Fehlerelement

  4. Geben Sie im Dialogfeld Bugs – Neues Element die Bezeichnung Bug01 im Feld Titel ein.

  5. Geben Sie Wer wird diesen Bug nachverfolgen? im Feld Beschreibung ein, geben Sie Schreiben von Entwicklerartikeln im Feld Projekt ein, und klicken Sie dann auf Speichern.

Nächste Schritte