Sdílet prostřednictvím


Postupy: Vytvoření metody přidání rozšíření používané inicializátorem kolekce (Visual Basic)

Když použijete inicializátor kolekce k vytvoření kolekce, kompilátor jazyka Visual Basic vyhledá Add metodu typu kolekce, pro kterou parametry metody Add odpovídají typům hodnot v inicializátoru kolekce. Tato Add metoda se používá k naplnění kolekce hodnotami z inicializátoru kolekce.

Pokud neexistuje žádná odpovídající Add metoda a nemůžete upravit kód pro kolekci, můžete přidat rozšiřující metodu s názvem Add , která přebírá parametry požadované inicializátorem kolekce. To je obvykle to, co potřebujete udělat, když používáte inicializátory kolekce pro obecné kolekce.

Příklad

Následující příklad ukazuje, jak přidat rozšiřující metodu do obecného List<T> typu, aby inicializátor kolekce lze použít k přidání objektů typu Employee. Metoda rozšíření umožňuje použít zkrácenou syntaxi inicializátoru kolekce.

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

Viz také