【C#】将数据库读出的数据转换为DataTable类型集合

return View(ConverDataReaderToDataTable(reader));

// 静态方法
public
static DataTable ConverDataReaderToDataTable(IDataReader reader) { // 检查外部传入的参数 if (null == reader) return null; // 实例化一个DataTable DataTable dataTable = new DataTable(); dataTable.Locale = System.Globalization.CultureInfo.InvariantCulture; int fieldCount = reader.FieldCount; // 在表中创建字段 for (int counter = 0; counter < fieldCount; counter++) { dataTable.Columns.Add(reader.GetName(counter), reader.GetFieldType(counter)); } dataTable.BeginLoadData(); object[] values = new object[fieldCount]; while (reader.Read()) { // 添加行 reader.GetValues(values); dataTable.LoadDataRow(values, true); } // 完成转换并返回 dataTable.EndLoadData(); return dataTable; }

html显示:

@model System.Data.DataTable
<table>
            <tr>
                @for (int i = 0; i < Model.Columns.Count; i++)
                {
                    <td>@Model.Columns[i].ColumnName</td>
                }
            </tr>
            @for (int i = 0; i < Model.Rows.Count; i++)
            {
                <tr>
                    @for(int j = 0; j < Model.Rows[i].ItemArray.Count(); j++)
                    {
                        <td>@Model.Rows[i].ItemArray[j]</td>
                    }
                </tr>
            } 
 </table>

 

转载于:https://www.cnblogs.com/stgp/p/7053941.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值