将 DataRow ItemArray 值括在引号中

Enclosing DataRow ItemArray values in quotes

我正在使用 String.Join 来连接和逗号分隔 DataRow ItemArray 中的值。我正在寻找一种有效的方法来双引号 String.

类型的任何数组项
String.Join(",", dr.ItemArray())

Whitesnake,Motley Crue,1987,Tour,75000 

"Whitesnake","Motley Crue",1987,"Tour",75000 (The desired format)

我怎样才能最好地做到这一点?

您可以使用 Linq 投影为字符串值添加引号:

var items = dr.ItemArray.Select (i => i is string ? "\"" + i + "\"" : i);
var line  = string.Join(",",items);

或 VB:

Dim items = dr.ItemArray.Select(Function(i) If(TypeOf i Is String, """" + i + """", i.ToString()))
Dim line = String.Join(",", items)