网上的方法都是类似
DataTable result = new DataTable(); if (list.le > 0) { PropertyInfo[] propertys = list[0].GetType().GetProperties(); foreach (PropertyInfo pi in propertys) { result.Columns.Add(pi.Name, pi.PropertyType); } for (int i = 0; i < list.Count; i++) { ArrayList tempList = new ArrayList(); foreach (PropertyInfo pi in propertys) { object obj = pi.GetValue(list[i], null); tempList.Add(obj); } object[] array = tempList.ToArray(); result.LoadDataRow(array, true); } } return result;
但是实际这样转不了。
为什么要转换为datatable,难道很高级?
在插入数据库的时候,是一次插入很多条,所以是用datatable生成xml,然后插入,datatabletoxml这个方法已经有了。所有如果这里能直接转,就简单了。
@清海扬波: 数据库都支持同时插入很多条啊
@Moon.Orm塑造Orm经典: 数据库是支持,但是arraylist没有model的情况下,好像不方便转换成datatable。现在暂时是弄个model解决。
@清海扬波: 去我博客看看。Moon.Orm
我以前写了一篇blog 看看能不能帮到你
http://www.cnblogs.com/gunsmoke/archive/2011/10/20/2218787.html
.ToDataTable() ???