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