当前位置:编程学习 > C#/ASP.NET >>

有关C# 中Linq 的一个问题 希望得到大神指点。

public class Data
{
int i;
}
public class Temp
{
int i;
int j;
int k;
}

现在有List<Data> data和List<Temp> data ,请问两个list怎么使用linq相互转换? --------------------编程问答-------------------- list.AsEnumeraibel() 也可以 其他 方法转换!
LINQ API 函数多的  --------------------编程问答-------------------- 能细说下嘛?新接触的,不是很理解。 --------------------编程问答-------------------- 不现实的需求 
List<Temp> data怎么转List<Data> data??  把j,k去了?  而且你这描述的.....属性都写成字段了 --------------------编程问答-------------------- 不好意思,我打的匆忙,弄好。
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相互转换? --------------------编程问答-------------------- temp转data时间i,k去掉? --------------------编程问答-------------------- data->temp: temp = data.Select(x => new Temp() {i=x.i}).ToList();
temp->data: data = temp.Select(x => new Data {i = x.i}).ToList();
--------------------编程问答-------------------- 给你一个好理解的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);
            });
--------------------编程问答-------------------- 需求不清楚,Data和Temp根本没什么关联,没法帮你 --------------------编程问答-------------------- 问问题首先的让人明白你什么意思 --------------------编程问答--------------------
引用 5 楼 zhuankeshumo 的回复:
temp转data时间i,k去掉?


我说这样的! --------------------编程问答--------------------
引用 6 楼 jshi123 的回复:
data->temp: temp = data.Select(x => new Temp() {i=x.i}).ToList();
temp->data: data = temp.Select(x => new Data {i = x.i}).ToList();


我想这样的! --------------------编程问答--------------------
引用 11 楼 burslane 的回复:
Quote: 引用 6 楼 jshi123 的回复:

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


我想这样的!

这个和linq关系好像不大吧,直接foreach都可以实现 --------------------编程问答--------------------
引用 6 楼 jshi123 的回复:
data->temp: temp = data.Select(x => new Temp() {i=x.i}).ToList();
temp->data: data = temp.Select(x => new Data {i = x.i}).ToList();

++
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,