Udostępnij za pośrednictwem


Porady: tworzenie i dodawanie metody rozszerzania wykorzystywanej przez inicjator kolekcji (Visual Basic)

Gdy inicjator kolekcji umożliwia tworzenie kolekcji, kompilator języka Visual Basic szuka Add metoda typu kolekcji dla których parametry dla Add metody zgodne z typami wartości w inicjatorze kolekcji.To Add metodę wypełnić kolekcji z wartościami z inicjatora kolekcji.

Jeśli brak odpowiedniego Add metoda istnieje i nie można zmodyfikować kod dla zbierania, można dodać metodę rozszerzenia o nazwie Add która pobiera parametry, które są wymagane przez inicjatora kolekcji.Jest to zwykle, co jest potrzebne do korzystania z kolekcji Inicjatory dla rodzajowego kolekcje.

Przykład

Poniższy przykład pokazuje, jak dodać metodę rozszerzenia do rodzajową List należy wpisać tak, aby inicjator kolekcji może służyć do dodawania obiektów typu Employee.Metoda rozszerzenie umożliwia należy użyć składni inicjator skróconą kolekcji.

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

Zobacz też

Zadania

Porady: tworzenie kolekcji wykorzystywanej przez inicjator kolekcji (Visual Basic)

Koncepcje

Inicjatory kolekcji (Visual Basic)