DataTableHelper.cs 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using TeamAAS_VP.Models;
  7. namespace TeamAAS_VM.Data
  8. {
  9. /// <summary>
  10. /// 将DataTable导出到本地文件中
  11. /// </summary>
  12. public static class DataTableHelper
  13. {
  14. /// <summary>
  15. /// 将DataTable导出到csv文件中
  16. /// </summary>
  17. /// <param name="dataTable"></param>
  18. /// <param name="filePath"></param>
  19. public static void ExportToCsv(System.Data.DataTable dataTable, string filePath)
  20. {
  21. StringBuilder sb = new StringBuilder();
  22. //添加列名
  23. foreach (System.Data.DataColumn column in dataTable.Columns)
  24. {
  25. sb.Append(column.ColumnName + ",");
  26. }
  27. sb.AppendLine();
  28. //添加数据
  29. foreach (System.Data.DataRow row in dataTable.Rows)
  30. {
  31. foreach (var item in row.ItemArray)
  32. {
  33. sb.Append(item.ToString() + ",");
  34. }
  35. sb.AppendLine();
  36. }
  37. System.IO.File.WriteAllText(filePath, sb.ToString());
  38. }
  39. public static System.Data.DataTable ToDataTable(IEnumerable<AlarmRecord> alarmRecords)
  40. {
  41. System.Data.DataTable dt = new System.Data.DataTable();
  42. dt.Columns.Add("Id", typeof(int));
  43. dt.Columns.Add("Code", typeof(string));
  44. dt.Columns.Add("Message", typeof(string));
  45. dt.Columns.Add("Source", typeof(string));
  46. dt.Columns.Add("Time", typeof(DateTime));
  47. foreach (var alarmRecord in alarmRecords)
  48. {
  49. //添加数据行
  50. dt.Rows.Add(alarmRecord.Id, alarmRecord.Code, alarmRecord.Message, alarmRecord.Source, alarmRecord.Time);
  51. }
  52. return dt;
  53. }
  54. }
  55. }