将C#转换为VB.net List <t>有错误</t>

时间:2010-09-20 19:37:40

标签: c# vb.net object-initializers

我正在尝试将一些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"}

我怎么样才能转换呢? Dim list As New List(Of Country)()From {New Country()With {Key .Name =“Select Country”,Key .Code =“0”}}

由于

1 个答案:

答案 0 :(得分:6)

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)那样有用,但如果您不需要添加或删除元素,您当然可以使用数组而不是列表。