これは私の最初の致命的な刺し傷でした
Util.WriteCsv<DataTable>(myDataTable, filePath);
私が得る例外は、「System.Data.DataTable」から「System.Collections.Generic.IEnumerable」です
これは私の最初の致命的な刺し傷でした
Util.WriteCsv<DataTable>(myDataTable, filePath);
私が得る例外は、「System.Data.DataTable」から「System.Collections.Generic.IEnumerable」です
最新の linqpad ベータ版 (v4.44.9) がデータテーブルをサポートしていることがわかりました
Util.WriteCSV
http://www.linqpad.net/beta.aspxを参照してください
それまでの間、古いバージョンでデータテーブルの csv ファイルを生成する必要がある場合は、次の手順に従ってください。
ベータ版 (4.44.06) は IEnumerable を期待しているようで、.AsIEnumerable() を myDataTable に配置した後でも、これを行うためのカスタム プロシージャを作成することになりました。
public static void ExportToCSV(DataTable table, string filePath)
{
var sb = new StringBuilder();
foreach (DataColumn column in table.Columns)
{
sb.Append(column.ColumnName + ",");
}
sb.Append(Environment.NewLine);
foreach (DataRow row in table.Rows)
{
for (int i = 0; i < table.Columns.Count; i++)
{
sb.Append(row[i].ToString().Replace(",", string.Empty) + ",");
}
sb.Append(Environment.NewLine);
}
System.IO.File.WriteAllText(filePath, sb.ToString() );
string.Format("wrote output to {0}", filePath).Dump();
}