Exemplo n.º 1
0
    public static DataTable GetDataTable(this transferDataTable transfer, bool ConvertToLocalTime = true)
    {
        if (transfer.Error != null || transfer.ColumnNames == null || transfer.DataTypes == null || transfer.Data == null)
        {
            return(null);
        }
        int       columnsCount = transfer.ColumnNames.Count;
        DataTable dt           = new DataTable();

        for (int i = 0; i < columnsCount; i++)
        {
            Type colType = Type.GetType(transfer.DataTypes[i]);
            dt.Columns.Add(new DataColumn(transfer.ColumnNames[i], colType));
        }
        int     index = 0;
        DataRow row   = dt.NewRow();

        foreach (object o in transfer.Data)
        {
            if (ConvertToLocalTime && o != null && o.GetType() == typeof(DateTime))
            {
                DateTime dat = Convert.ToDateTime(o);
                row[index] = dat.ToLocalTime();
            }
            else
            {
                row[index] = o == null ? DBNull.Value : o;
            }
            index++;
            if (columnsCount == index)
            {
                index = 0;
                dt.Rows.Add(row);
                row = dt.NewRow();
            }
        }
        return(dt);
    }
Exemplo n.º 2
0
 public static transferDataTable LoadData(this transferDataTable transfer, DataTable dt)
 {
     if (dt != null)
     {
         transfer.DataTypes   = new List <string>();
         transfer.ColumnNames = new List <string>();
         foreach (DataColumn c in dt.Columns)
         {
             transfer.ColumnNames.Add(c.ColumnName);
             transfer.DataTypes.Add(c.DataType.ToString());
         }
         transfer.Data = new List <object>();
         foreach (DataRow dr in dt.Rows)
         {
             foreach (DataColumn col in dt.Columns)
             {
                 transfer.Data.Add(dr[col] == DBNull.Value ? null : dr[col]);
             }
         }
         transfer.Count = dt.Rows.Count;
     }
     return(transfer);
 }