如何将DataTable转换成List<T>

 我来答
恐怖的肖恩
2016-02-12 · TA获得超过2452个赞
知道大有可为答主
回答量:2413
采纳率:38%
帮助的人:542万
展开全部
动态生成的控件:
Private Sub UserControl1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
                Dim myPicture = New System.Windows.Forms.PictureBox()
                Me.Panel3.Controls.Add(myPicture)
                myPicture.Size = New System.Drawing.Size(115, 160)
                myPicture.TabStop = False
                myPicture.Name = "p" 
                myPicture.Cursor = Cursors.Hand
                AddHandler myPicture.Click, AddressOf mypic_Click '添加事件
    End Sub
 
处理事件的过程:
Private Sub mypic_Click() 'ByVal id As String
        Dim bookInfo As New BookInfo
        bookInfo.Show()
        Me.Parent.Enabled = False
出与美肉深笑1i
推荐于2016-04-12 · TA获得超过1.4万个赞
知道大有可为答主
回答量:8750
采纳率:88%
帮助的人:8824万
展开全部
DataTable dt = new DataTable("cart");
DataColumn dc1 = new DataColumn("tbl_name", Type.GetType("System.String")); DataColumn dc2 = new DataColumn("tbl_Id", Type.GetType("System.Int32"));
dt.Columns.Add(dc1); dt.Columns.Add(dc2);

foreach(对象 对象名 in list<对象>)
{
DataRow dr = dt.NewRow();
dr["prizename"] = 对象名.tbl_name.toString();
dr["point"] = Convert.toInt32(对象名.tbl_Id);
} //填充了10条相同的记录进去
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1997排长
高粉答主

2016-01-14 · 说的都是干货,快来关注
知道大有可为答主
回答量:1.1万
采纳率:0%
帮助的人:793万
展开全部
datatable转换为list的方法

public List<T> GetList<T>(DataTable table)
{
List<T> list = new List<T>();
T t = default(T);
PropertyInfo[] propertypes = null;
string tempName = string.Empty;
foreach (DataRow row in table.Rows)
{
t = Activator.CreateInstance<T>();
propertypes = t.GetType().GetProperties();
foreach (PropertyInfo pro in propertypes)
{
tempName = pro.Name;
if (table.Columns.Contains(tempName))
{
object value = row[tempName];
if (!value.ToString().Equals(""))
{
pro.SetValue(t, value, null);
}
}
}
list.Add(t);
}
return list.Count == 0 ? null : list;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
祈鹅尚店
2016-01-06 · TA获得超过150个赞
知道小有建树答主
回答量:347
采纳率:100%
帮助的人:156万
展开全部
需要用实体类反射技术。有一些成型的类,可以找一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式