it-swarm.com.de

So deklarieren Sie ein Inline-Array in VB.NET

Ich suche das VB.NET-Äquivalent von

var strings = new string[] {"abc", "def", "ghi"};
55
erik
Dim strings() As String = {"abc", "def", "ghi"}
73
gfrizzle

Es gibt bereits jetzt viele richtige Antworten darauf, aber hier ist eine Version, in der man einem Mann das Fischen beibringt.

Erstellen Sie zunächst eine winzige Konsolen-App in C #:

class Test
{
    static void Main()
    {
        var strings = new string[] {"abc", "def", "ghi"};
    }
}

Kompilieren Sie es unter Beibehaltung der Debug-Informationen:

csc /debug+ Test.cs

Führen Sie Reflector aus, und öffnen Sie die Main-Methode. Dekompilieren Sie dann in VB. Sie landen mit:

Private Shared Sub Main()
    Dim strings As String() = New String() { "abc", "def", "ghi" }
End Sub

Also kamen wir zu der gleichen Antwort, ohne VB zu kennen. Das wird nicht immer funktionieren und es gibt viele andere Konvertierungstools, aber es ist ein guter Anfang. Als erste Anlaufstelle auf jeden Fall einen Versuch wert.

42
Jon Skeet

In neueren Versionen von VB.NET, die das Ableiten von Typen unterstützen, funktioniert diese kürzere Version auch:

Dim strings = {"abc", "def", "ghi"}
9
Netricity
Dim strings As String() = New String() {"abc", "def", "ghi"}
5
David Mohundro

Kein VB Typ. Aber vielleicht so etwas?

Dim strings = New String() {"abc", "def", "ghi"}

(Ungefähr 25 Sekunden zu spät ...)

Tipp: http://www.developerfusion.com/tools/convert/csharp-to-vb/

5
Jesper Palm

Dim strings As String() = {"abc", "def", "ghi"}

4
Steve Wright