惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
D
DataBreaches.Net
博客园 - 三生石上(FineUI控件)
博客园_首页
T
Tailwind CSS Blog
美团技术团队
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
大猫的无限游戏
大猫的无限游戏
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
云风的 BLOG
云风的 BLOG
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 聂微东
S
SegmentFault 最新的问题
小众软件
小众软件
酷 壳 – CoolShell
酷 壳 – CoolShell
N
Netflix TechBlog - Medium
Jina AI
Jina AI
WordPress大学
WordPress大学
U
Unit 42
J
Java Code Geeks
Blog — PlanetScale
Blog — PlanetScale
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
The Cloudflare Blog

博客园 - 威风剑

sqllite数据库操作帮助类 创建按钮的两种方法 jquery自定义事件 操作div - 威风剑 - 博客园 jQuery基本操作篇 jquery操作select时怎么产生事件 - 威风剑 - 博客园 jquery操作radio/checkbox/select 及其相关 - 威风剑 - 博客园 操作下拉框 - 威风剑 - 博客园 jquery操作select下拉列表框 - 威风剑 - 博客园 jqury操作表格 - 威风剑 - 博客园 .NET SESSION的使用及原理 DateTime.Now.ToString("yyyyMMddHHmmssfff") WebMethod 特性的 EnableSession Thread.Sleep(0) 【转】DataGridView新特色(vs2005) showModalDialog和showModelessDialog使用心得 Transact SQL 语 句 功 能 SQL语句 SQL语句
Ilist转换成dataset (转)
威风剑 · 2008-01-29 · via 博客园 - 威风剑

转换成DataSet的通用的方法如下:

    Private Function ConvertToDS(ByVal lst As IList, ByVal typ As System.Type) As DataSet

        Dim obj As Object

        Dim ds As New DataSet

        Dim tbl As DataTable = ds.Tables.Add(typ.Name)

        ' Get the public properties.

        Dim myPropertyInfo As System.Reflection.PropertyInfo() = typ.GetProperties((System.Reflection.BindingFlags.Public Or System.Reflection.BindingFlags.Instance))

        Dim pi As System.Reflection.PropertyInfo

        For Each pi In myPropertyInfo

            tbl.Columns.Add(pi.Name, System.Type.GetType(pi.PropertyType.ToString()))

        Next

        For Each obj In lst

            Dim dr As DataRow = tbl.NewRow

            For Each pi In myPropertyInfo

                dr(pi.Name) = pi.GetValue(obj, Nothing)

            Next

            tbl.Rows.Add(dr)

        Next

        Return ds

    End Function

使用上面的方法来生成DataSet的方法如下:

Dim Cust As New CustomerBR

Dim customerLst As IList

customerLst = Cust.GetCustomers("from Customers")

Dim myType As System.Type = GetType(Customers)

DataGrid1.DataSource = ConvertToDS(customerLst, myType).Tables(0)