Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie einen Sammlungsinitialisierer zum Erstellen einer Auflistung verwenden, sucht der Visual Basic-Compiler nach einer Add Methode des Auflistungstyps, für die die Parameter für die Add Methode den Typen der Werte im Sammlungsinitialisierer entsprechen. Diese Add Methode wird verwendet, um die Auflistung mit den Werten aus dem Sammlungsinitialisierer aufzufüllen.
Wenn keine übereinstimmende Add Methode vorhanden ist und Sie den Code für die Auflistung nicht ändern können, können Sie eine Erweiterungsmethode Add hinzufügen, die die parameter verwendet, die vom Sammlungsinitialisierer benötigt werden. Dies ist in der Regel erforderlich, wenn Sie Sammlungsinitialisierer für generische Auflistungen verwenden.
Beispiel
Das folgende Beispiel zeigt, wie Sie dem generischen List<T> Typ eine Erweiterungsmethode hinzufügen, damit ein Sammlungsinitialisierer verwendet werden kann, um Objekte vom Typ Employeehinzuzufügen. Mit der Erweiterungsmethode können Sie die gekürzte Sammlungsinitialisierungssyntax verwenden.
Public Class Employee
Public Property Id() As Integer
Public Property Name() As String
End Class
Imports System.Runtime.CompilerServices
Module Module1
<Extension()>
Sub Add(ByVal list As List(Of Employee), ByVal id As Integer,
ByVal name As String)
list.Add(New Employee With {.Id = id, .Name = name})
End Sub
End Module
Sub Main()
Dim employees = New List(Of Employee) From {{1, "Adams, Ellen"},
{2, "Hamilton, James R."},
{3, "Ihrig, Ryan"}}
End Sub