Gewusst wie: Hinzufügen oder Löschen von Listenelementen

Letzte Änderung: Dienstag, 16. März 2010

Gilt für: SharePoint Foundation 2010

In den Beispielen dieses Themas wird gezeigt, wie mit dem SharePoint Foundation-Serverobjektmodell Listenelemente auf einer Website oder in einer Websitesammlung erstellt oder gelöscht werden.

HinweisHinweis

In den Codebeispielen dieses Themas werden Member der Microsoft.SharePoint.SPContext-Klasse verwendet, um die aktuelle Websitesammlung, Website oder Liste abzurufen. Außerhalb eines HTTP-Kontexts, z. B. in einer Konsolenanwendung oder Windows-Anwendung, rufen Sie mit einer anderen Methode Verweise auf die Hauptobjekte ab. Verwenden Sie statt eines Microsoft.SharePoint.SPContext-Objekts den SPSite()-Konstruktor, um eine bestimmte Websitesammlung zu instanziieren und Objekte abzurufen. Weitere Informationen finden Sie unter Abrufen von Verweisen auf Websites, Webanwendungen und andere Schlüsselobjekte.

Erstellen von Listenelementen

Um einer Liste Elemente hinzuzufügen, verwenden Sie die Add-Methode der SPListItemCollection-Klasse zum Erstellen eines Elementobjekts, und aktualisieren Sie dann mithilfe der Update-Methode der SPListItem-Klasse die Datenbank mit dem neuen Element.

Im folgenden Beispiel wird davon ausgegangen, dass fünf Textfelder vorhanden sind: ein Textfeld, das den Namen der Liste angibt, der Elemente hinzugefügt werden sollen, und vier weitere Textfelder, in denen die hinzuzufügenden Werte angegeben werden. Indexerstellungen erfassen die Eingaben von allen fünf Quellen. In dem Beispiel wird außerdem davon ausgegangen, dass die in TextBox1.Text angegebene Liste vorhanden ist.

Dim mySite As SPWeb = SPContext.Current.Web
Dim listItems As SPListItemCollection 
    = mySite.Lists(TextBox1.Text).Items

Dim item As SPListItem = listItems.Add()

item("Title") = TextBox2.Text
item("Stock") = Convert.ToInt32(TextBox3.Text)
item("Return Date") = Convert.ToDateTime(TextBox4.Text)
item("Employee") = TextBox5.Text

item.Update()
SPWeb mySite = SPContext.Current.Web;
SPListItemCollection listItems = mySite.Lists[TextBox1.Text].Items;

SPListItem item = listItems.Add();

item["Title"] = TextBox2.Text;
item["Stock"] = Convert.ToInt32(TextBox3.Text);
item["Return Date"] = Convert.ToDateTime(TextBox4.Text);
item["Employee"] = TextBox5.Text;

item.Update();
}

Im Beispiel wird zunächst mit der Add-Methode der Auflistung ein SPListItem-Objekt erstellt. Dann werden mit einer Indexerstellung für das Listenelement bestimmten Feldern Werte zugewiesen. Beispielsweise gibt item["Title"] den Wert der Title-Spalte für das Element an. Schließlich wird die Update-Methode des Listenelements aufgerufen, um Änderungen in der Datenbank auszuführen. Sie können auch die Felder Author, Editor, Created und Modified für die Indexerstellung verwenden, wobei Author oder Editor eine Microsoft SharePoint Foundation-Benutzer-ID angibt. Ein Beispiel hierzu finden Sie unter der SPListItem-Klasse.

Löschen von Listenelementen

Verwenden Sie zum Löschen von Elementen aus einer Liste die Delete-Methode der SPListItemCollection-Klasse, die einen Index für die Auflistung als Parameter akzeptiert.

Dim mySite As SPWeb = SPContext.Current.Web
Dim listItems As SPListItemCollection 
    = mySite.Lists(TextBox1.Text).Items
Dim itemCount As Integer = listItems.Count
Dim k As Integer

For k = 0 To itemCount - 1
    Dim item As SPListItem = listItems(k)

    If TextBox2.Text = item("Employee").ToString() Then
        listItems.Delete(k)
    End If
Next k
SPWeb mySite = SPContext.Current.Web;
SPListItemCollection listItems = mySite.Lists[TextBox1.Text].Items;
int itemCount = listItems.Count;

for (int k=0; k<itemCount; k++)
{
    SPListItem item = listItems[k];

    if (TextBox2.Text==item["Employee"].ToString())
    {
        listItems.Delete(k);
    }
}

In dem Beispiel wird auf Grundlage der Eingabe aus zwei Textfeldern die Auflistung von Elementen für die angegebene Liste durchlaufen, und ein Element wird gelöscht, wenn der Wert des Felds Employee mit dem angegebenen Wert übereinstimmt.

In den vorherigen Beispielen ist eine using-Direktive (Imports in Visual Basic) für den Microsoft.SharePoint-Namespace erforderlich.

Siehe auch

Referenz

Microsoft.SharePoint

Konzepte

Arbeiten mit Listenobjekten und Auflistungen

Verwenden von Visual Studio für die SharePoint-Enwicklung

Sicherheitsüberprüfung und POSTs zum Aktualisieren von Daten

Rechteerweiterungen