Question

Je recherche l'équivalent VB.NET de

var strings = new string[] {"abc", "def", "ghi"};
Était-ce utile?

La solution

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

Autres conseils

Il existe déjà de nombreuses réponses correctes à ce sujet, mais voici un "apprendre à un gars à pêcher" version.

Créez d'abord une petite application console en C #:

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

Compilez-le en conservant les informations de débogage:

csc /debug+ Test.cs

Exécutez Reflector dessus, puis ouvrez la méthode Main - puis décompilez-le en VB. Vous vous retrouvez avec:

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

Nous sommes donc parvenus à la même réponse, mais sans connaître VB. Cela ne fonctionnera pas toujours, et il existe de nombreux autres outils de conversion, mais c'est un bon début. Vaut vraiment le coup d'essayer comme premier port d'escale.

Dans les versions plus récentes de VB.NET prenant en charge l'inférence de type, cette version plus courte fonctionne également:

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

Pas un gars de VB. Mais peut-être quelque chose comme ça?

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

(environ 25 secondes de retard ...)

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

Dim chaînes comme String () = {"abc", "def", "ghi"}

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top