Reputation: 743
I'm trying to determine if there's a way in Visual Basic 2008 (Express edition if that matters) to do inline collection initialization, a la JavaScript or Python:
Dim oMapping As Dictionary(Of Integer, String) = {{1,"First"}, {2, "Second"}}
I know Visual Basic 2008 supports array initialization like this, but I can't seem to get it to work for collections... Do I have the syntax wrong, or is it just not implemented?
Upvotes: 24
Views: 6997
Reputation: 31353
Here are VB collection initializers using the From keyword. (Starting with Visual Studio 2010)
List:
Dim list As New List(Of String) From {"First", "Second"}
Dictionary:
Dim oMapping As New Dictionary(Of Integer, String) From {{1, "First"}, {2, "Second"}}
Upvotes: 8
Reputation: 545905
Visual Basic 9.0 doesn't support this yet. However, Visual Basic 10.0 will.
Upvotes: 19