C# List<T>转为 DataTable

 1 // remove "this" if not on C# 3.0 / .NET 3.5
 2         public static System.Data.DataTable ConvertToDatatable<T>(this IList<T> data) {
 3             System.ComponentModel.PropertyDescriptorCollection props =
 4                 System.ComponentModel.TypeDescriptor.GetProperties(typeof(T));
 5             System.Data.DataTable table = new System.Data.DataTable();
 6             for (int i = 0; i < props.Count; i++) {
 7                 System.ComponentModel.PropertyDescriptor prop = props[i];
 8                 table.Columns.Add(prop.Name, prop.PropertyType);
 9             }
10             object[] values = new object[props.Count];
11             foreach (T item in data) {
12                 for (int i = 0; i < values.Length; i++) {
13                     values[i] = props[i].GetValue(item);
14                 }
15                 table.Rows.Add(values);
16             }
17             return table;
18         }
时间: 2024-08-09 19:50:37

C# List<T>转为 DataTable的相关文章

利用反射将任意元素类型 的 List 转为 DataTable

List to DataTable. 利用反射,将任意元素类型 的 List 转为 DataTable. Using System.Collections; Using System.Reflection; ? public static DataTable ToDataTable(IList list) {     DataTable result = new DataTable();     if (list.Count > 0)     {         PropertyInfo[] p

.net 打开Excel文档并转为DataTable

/// <summary> /// 打开Excel文档并转为DataTable /// </summary> /// <returns></returns> public static DataTable ExcelWorksheetToDataTable() { DataTable dtExecl = new DataTable(); double Ver = GetExcelVer(); if (Ver <= 0) { MessageBox.Sho

将 xml 文件 转为 DataTable

1 private static DataTable CreateDataTable(string table) { 2 DataSet dataSet = new DataSet(); 3 string dataFile = FilesHelper.FindingFileName(Application.StartupPath, "Data\\Mail.xml"); 4 if(dataFile != string.Empty) { 5 FileInfo fi = new FileIn

将txt转为DataTable的方法

public static byte[] GetFileData(string fileUrl) { FileStream fs = new FileStream(fileUrl, FileMode.Open, FileAccess.Read); try { byte[] buffur = new byte[fs.Length]; fs.Read(buffur, 0, (int)fs.Length); return buffur; } catch { return null; } finally

读取Excel里面的内容转为DataTable

using System; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.Linq; using System.Text; namespace ExcelRead { class ExcelHelper { private static string excelConstr; private OleDbConnection conn = null;//操作数据库

C# 通过ImportNode AppendChild方法合并XmlDocument,XML转为DataTable

var doc1 = new XmlDocument(); var doc2 = new XmlDocument(); XmlNode root1 = doc1.DocumentElement; doc2.Load(new XmlNodeReader(myXmlNode2)); foreach (XmlNode node in doc2.DocumentElement.ChildNodes) { // 将节点从另一个文档导入到当前文档.如果执行深层克隆,则为 true:否则为 false. va

深入详解DataTable

在学习DataTable知识之前,我们有必要了解下ADO.NET.以下摘自MSDN: ADO.NET 对 Microsoft SQL Server 和 XML 等数据源以及通过 OLE DB 和 XML 公开的数据源提供一致的访问.数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索.处理和更新所包含的数据.ADO.NET 通过数据处理将数据访问分解为多个可以单独使用或一前一后使用的不连续组件.ADO.NET 包含用于连接到数据库.执行命令和检索结果的 .NET Frame

xml转datatable和json

xml字符串转为DataTable与Json using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Xml; using System.Text; using System.Collections; using System.Data; /// <summary> ///XmlHelper 的摘要说明 /// </summary> publi

Josn转DataTable(转)

使用UI框架开发的时候就常常用到DataTable转Json的情况,但是最近完成一个微信公众号开发的项目,需要把微信接口传过来的json值作为转为DataTable后绑定到服务器控件上. 在网上找了很长一段时间,很幸运被我找到了解决方法. 代码如下: /// <summary> /// json转换为DataTable /// </summary> /// <param name="json">需要转化的json格式字符串</param>