Преобразование C# в список VB.net<T> имеет ошибку

Я пытаюсь преобразовать код C# в VB, но получаю ошибку. Какой будет правильный синтаксис VB?

C#

return new List<string>   {"First Name", "Last Name", "First & Last Name", "None"};

VB

Return New List(Of String)() From {"First Name", "Last Name", "First & Last Name", "None"}

А как насчет того, чтобы преобразовать это тоже? Затемнить список как новый список (из страны)() из {новой страны () с { Key .Name = "Выбрать страну", Key .Code = "0" } }

Спасибо

1 ответ

Решение

Инициализация коллекции поддерживается в VB10 (часть Visual Studio 2010), но не в VB9 (VS 2008). Размещенный вами синтаксис правильный для VB10.

Dim foos As New List(Of String)() From {"Foo", "Bar"}

В VB9, вам просто нужно обращаться с этим по старинке

Dim foos as New List(of String)()
foos.Add("Foo")
foos.Add("Bar")

VB9 поддерживает инициализацию массива

Dim foos As String() = New String() {"Foo", "Bar"}

Однако массив не такой функциональный, как List(of T), но если вам не нужно добавлять или удалять элементы, вы, конечно, можете использовать массив вместо списка.

Другие вопросы по тегам