Browse Source

datatable改进

懒得勤快 6 years ago
parent
commit
9865356925

+ 12 - 0
Masuit.Tools.Core/Database/DataTableHelper.cs

@@ -68,6 +68,18 @@ namespace Masuit.Tools.Core.Database
             }
         }
 
+        /// <summary>
+        /// 将泛型集合类转换成DataTable
+        /// </summary>
+        /// <typeparam name="T">集合项类型</typeparam>
+        /// <param name="list">集合</param>
+        /// <param name="tableName">表名</param>
+        /// <returns>数据集(表)</returns>
+        public static DataTable ToDataTable<T>(this IEnumerable<T> list, string tableName = null)
+        {
+            return ToDataTable(list.ToList(), tableName);
+        }
+
         /// <summary>
         /// 将泛型集合类转换成DataTable
         /// </summary>

+ 9 - 0
Masuit.Tools.Core/Masuit.Tools.Core.xml

@@ -521,6 +521,15 @@
             <param name="dt"></param>
             <returns></returns>
         </member>
+        <member name="M:Masuit.Tools.Core.Database.DataTableHelper.ToDataTable``1(System.Collections.Generic.IEnumerable{``0},System.String)">
+            <summary>
+            将泛型集合类转换成DataTable
+            </summary>
+            <typeparam name="T">集合项类型</typeparam>
+            <param name="list">集合</param>
+            <param name="tableName">表名</param>
+            <returns>数据集(表)</returns>
+        </member>
         <member name="M:Masuit.Tools.Core.Database.DataTableHelper.ToDataTable``1(System.Collections.Generic.IList{``0},System.String)">
             <summary>
             将泛型集合类转换成DataTable

+ 12 - 0
Masuit.Tools/Database/DataTableHelper.cs

@@ -68,6 +68,18 @@ namespace Masuit.Tools.Database
             }
         }
 
+        /// <summary>
+        /// 将泛型集合类转换成DataTable
+        /// </summary>
+        /// <typeparam name="T">集合项类型</typeparam>
+        /// <param name="list">集合</param>
+        /// <param name="tableName">表名</param>
+        /// <returns>数据集(表)</returns>
+        public static DataTable ToDataTable<T>(this IEnumerable<T> list, string tableName = null)
+        {
+            return ToDataTable(list.ToList(), tableName);
+        }
+
         /// <summary>
         /// 将泛型集合类转换成DataTable
         /// </summary>

+ 2 - 1
NetCoreTest/Program.cs

@@ -5,6 +5,7 @@ using Microsoft.AspNetCore.Hosting;
 using System;
 using System.Collections.Generic;
 using System.ComponentModel;
+using System.Linq;
 
 namespace NetCoreTest
 {
@@ -12,7 +13,7 @@ namespace NetCoreTest
     {
         public static void Main(string[] args)
         {
-            var table = new List<MyClass>() { new MyClass() { MyProperty = "sss", MyProperty1 = 222 } }.ToDataTable();
+            var table = new List<MyClass>() { new MyClass() { MyProperty = "sss", MyProperty1 = 222 } }.Select(c => new { 列1 = c.MyProperty, 列2 = c.MyProperty1 }).ToDataTable();
 
             Console.WriteLine((long)SystemInfo.GetRamInfo().MemoryAvailable);
             CreateWebHostBuilder(args).Build().Run();