Beste Weg, um konvertieren von Object[] in String[] oder List<String>
Habe ich eine Daten-Zeile. Ich kann die Elemente mit der Eigenschaft dataRow.ItemArray
die den Typ object[]
.
Ich brauche, um zu konvertieren, um String[]
oder List<String>
Sehe ich die Methoden ToArray<>
und ToList<>
. aber weiß nicht, wie es zu benutzen.Bitte helfen.
Vielen Dank im Voraus
InformationsquelleAutor Ananth | 2011-02-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie zwei Möglichkeiten, abhängig von der tatsächlichen Objekte in der dataRow.ItemArray
Wenn es tatsächlich die string-Objekte im object[] können Sie nur gegossen element Weise.
aber wenn die Objekte von einem anderen Typ, z.B. int oder sonst etwas, das Sie brauchen, um zu konvertieren der zu einem string (in diesem Beispiel mit
.ToString()
aber eine andere benutzerdefinierte Methode, die erforderlich sein könnten, in Ihrem FallEdit:
Wenn Sie nicht brauchen
List<string>
oderstring[]
explizit verlassen Sie die.ToList()
aus und erhalten Sie eineIEnumerable<string>
statt.null
/DBNull
Konvertierung-Beispiel wie diese sind etwas gemeinsamen Fällen (meiner Erfahrung nach).InformationsquelleAutor Albin Sunnanbo
(die Zeile, die Sie wollen, ist die zweite)
InformationsquelleAutor xanatos
Möchten Sie vielleicht zu prüfen, die für null-Werte zuerst:
Das zweite Beispiel ist nicht nur die erste-mit-einer-null-check aber explizit Konvertierung. Dies sollte darauf hingewiesen werden.
InformationsquelleAutor Ed S.
Können Sie
System.Array.ConvertTo
mitSystem.Convert.ToString
als Delegierter.InformationsquelleAutor Huusom
ToArray und ToList nicht ganz das tun, was Sie wollen, wie Sie nur ein Objekt zurückgeben, array oder eine Liste. Müssen Sie massage die Daten in Zeichenfolgen erste und
Select
helfen können. Versuchen Sie dies:"" + i
in diesem Fall hat es die gleiche Wirkung wie die ternäre w.r.t. null-Werte-aber Stil-subjektiv 🙂InformationsquelleAutor Matt Greer