1

これは私のクラスです

Public Class DBServer
    Public  ServerId  As Integer
    Public  ServerName As String
End Class

そして変数:

Dim serverList As New List(Of DBServer)

C#で。次のように追加できます。

serverList.Add(new DBServer{ ServerId=1,ServerName="Server1"});

VB.NET でこれを実現するにはどうすればよいですか。.NET 4.0 を使用しています。

4

3 に答える 3

6

直接ポートの場合は、試してください

serverList.Add(new DBServer With { .ServerId=1,.ServerName="Server1"})

詳細については、オブジェクト初期化子: 名前付きおよび匿名を参照してください。

于 2012-08-07T12:49:59.870 に答える
1

ServerName これは、実際に投稿された String 配列であると仮定した C# からの正しい直接変換です(初期化子の周りに余分な中括弧があることに注意してくださいServername)。

serverlist.Add(New DBServer() With {.ServerId = 1, .ServerName = {"foo"}})

Servername が文字列配列ではなく、実際には文字列である場合、@Binary Worrier には正しい解決策があります。

serverlist.Add(New DBServer() With {.ServerId = 1, .ServerName = "foo"})
于 2012-08-07T12:59:56.460 に答える
0

Enumerable でリストを初期化できます (http://msdn.microsoft.com/en-us/library/fkbw11z0)

    Dim serverList As New List(Of DBServer)({New DBServer With {.ServerId = 1, .ServerName = "Server One"},
                                             New DBServer With {.ServerId = 2, .ServerName = "Server Two"},
                                             New DBServer With {.ServerId = 3, .ServerName = "Server Three"}})
于 2012-08-07T13:20:27.163 に答える