コード例 #1
0
 /// <summary>
 ///     DataTable包装
 /// </summary>
 /// <param name="table"></param>
 /// <param name="TmphBuilder">数据流包装器</param>
 /// <returns></returns>
 public static TmphDataTable From(DataTable table, TmphDataWriter TmphBuilder)
 {
     var value = new TmphDataTable();
     if ((value._rowCount = table.Rows.Count) != 0) value.FromPackage(table, TmphBuilder);
     value._name = table.TableName;
     return value;
 }
コード例 #2
0
 /// <summary>
 ///     DataTable拆包
 /// </summary>
 /// <param name="value"></param>
 /// <returns></returns>
 public static unsafe DataTable Get(TmphDataTable value)
 {
     if (value == null) return null;
     var table = new DataTable(value._name);
     try
     {
         if (value._rowCount != 0)
         {
             fixed (byte* dataFixed = value._data.Data)
             {
                 var TmphBuilder = new TmphDataReader(dataFixed, value._data.Strings, value._data.Bytes);
                 value.Get(table, TmphBuilder);
             }
         }
         return table;
     }
     catch (Exception error)
     {
         table.Dispose();
         TmphLog.Error.Add(error, null, false);
     }
     return null;
 }
コード例 #3
0
 /// <summary>
 ///     DataTable包装
 /// </summary>
 /// <param name="table"></param>
 /// <returns></returns>
 public static TmphDataTable From(DataTable table)
 {
     if (table == null) return null;
     var value = new TmphDataTable();
     if ((value._rowCount = table.Rows.Count) != 0)
     {
         using (var TmphBuilder = new TmphDataWriter())
         {
             value.FromPackage(table, TmphBuilder);
             value._data = TmphBuilder.Get();
         }
     }
     return value;
 }