public class Data
{
int i;
}
public class Temp
{
int i;
int j;
int k;
}现在有List<Data> data和List<Temp> data ,请问两个list怎么使用linq相互转换?

解决方案 »

  1.   

    list.AsEnumeraibel() 也可以 其他 方法转换!
    LINQ API 函数多的 
      

  2.   

    不现实的需求 
    List<Temp> data怎么转List<Data> data??  把j,k去了?  而且你这描述的.....属性都写成字段了
      

  3.   

    不好意思,我打的匆忙,弄好。
    public class Data
    {
    int i{get; set;}
    }
    public class Temp
    {
    int i{get; set;}
    int j{get; set;}
    int k{get; set;}
    }现在有List<Data> data和List<Temp> data ,请问两个list怎么使用linq相互转换?
      

  4.   

    data->temp: temp = data.Select(x => new Temp() {i=x.i}).ToList();
    temp->data: data = temp.Select(x => new Data {i = x.i}).ToList();
      

  5.   

    给你一个好理解的linq
    IList<Data> listData = new List<Data>();
                listData.Add(new Data(1));            IList<Temp> listTemp = new List<Temp>();
                listTemp.Add(new Temp(1, 2, 3));            var result = from p in listData
                             from q in listTemp
                             where p.i == q.i
                             select new
                             {
                                 q.i,
                                 q.j,
                                 q.k
                             };
                IList<Temp> newlistTemp = new List<Temp>();
                result.ToList().ForEach(obj =>
                {
                    Temp temp = new Temp();
                    temp.i = obj.i;
                    temp.j = obj.j;
                    temp.k = obj.k;
                    newlistTemp.Add(temp);
                });
      

  6.   

    需求不清楚,Data和Temp根本没什么关联,没法帮你
      

  7.   


    我想这样的!
    这个和linq关系好像不大吧,直接foreach都可以实现