Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ha gyűjtemény inicializáló használatával hoz létre gyűjteményt, a Visual Basic fordító olyan gyűjteménytípusú metódust keres Add , amelyhez a metódus paraméterei Add egyeznek a gyűjtemény inicializálójának értékeinek típusaival. Ezzel Add a módszerrel tölthető fel a gyűjtemény a gyűjtemény inicializálójának értékeivel.
Ha nincs egyező Add metódus, és nem tudja módosítani a gyűjtemény kódját, hozzáadhat egy úgynevezett Add bővítménymetódust, amely a gyűjtemény inicializálója által igényelt paramétereket veszi igénybe. Általában ezt kell tennie, ha gyűjtemény inicializálókat használ az általános gyűjteményekhez.
példa
Az alábbi példa bemutatja, hogyan adhat hozzá bővítménymetódust az általános List<T> típushoz, hogy a gyűjtemény inicializálója használható legyen a típusobjektumok Employeehozzáadásához. A bővítménymetódus lehetővé teszi a rövidített gyűjtemény inicializáló szintaxisának használatát.
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