首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

linq to object,该如何解决

2012-01-10 
linq to object有1个list类名 Anew list类名里面有 很多个属性 已经为其中1个属性,ID 赋过值了现在我

linq to object
有1个
list<类名> A=new list<类名>
里面有 很多个属性 已经为其中1个属性,ID 赋过值了  

现在我有1个DataTable dt
我想用循环 使A.ID的值和dt里的ID匹配 。。然后把剩余的值给赋上去。。额 请大神们帮忙了

[解决办法]
第一个 例如把table dt中 test 字段 给Class A中的属性 name 赋值 
A.ForEach(e =>
e.name = (from t in dt.AsEnumerable()
where t.Field<int>("ID") == e.ID
select t.Field<string>("test")).FirstOrDefault()
);

依次,不过个人感觉 效率可能不高....
[解决办法]

C# code
DataTable dt = XXX();List<Book> A=new List<Book>();for(int i=0;i<dt.Rows.Count;i++){   foreach(Book book in A)   {        if(int.Parse(dt.Rows[i]["ID"].ToString())==book.ID)        {                book.Name = dt.Rows[i]["Name"].ToString();                //实体类中的其他字段自己相应赋值即可        }   }}
[解决办法]
探讨
有1个
list<类名> A=new list<类名>
里面有 很多个属性 已经为其中1个属性,ID 赋过值了

现在我有1个DataTable dt
我想用循环 使A.ID的值和dt里的ID匹配 。。然后把剩余的值给赋上去。。额 请大神们帮忙了

热点排行