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

zwt379716066 2013-07-30 06:59:54
public class Data
{
int i;
}
public class Temp
{
int i;
int j;
int k;
}

现在有List<Data> data和List<Temp> data ,请问两个list怎么使用linq相互转换?
...全文
162 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
q107770540 2013-07-31
  • 打赏
  • 举报
回复
引用 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();
++
PaulyJiang 2013-07-31
  • 打赏
  • 举报
回复
引用 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();
我想这样的![/quote] 这个和linq关系好像不大吧,直接foreach都可以实现
Sharp789 2013-07-30
  • 打赏
  • 举报
回复
引用 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();
我想这样的!
Sharp789 2013-07-30
  • 打赏
  • 举报
回复
引用 5 楼 zhuankeshumo 的回复:
temp转data时间i,k去掉?
我说这样的!
EnForGrass 2013-07-30
  • 打赏
  • 举报
回复
问问题首先的让人明白你什么意思
EnForGrass 2013-07-30
  • 打赏
  • 举报
回复
需求不清楚,Data和Temp根本没什么关联,没法帮你
全栈极简 2013-07-30
  • 打赏
  • 举报
回复
给你一个好理解的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);
            });
jshi123 2013-07-30
  • 打赏
  • 举报
回复
data->temp: temp = data.Select(x => new Temp() {i=x.i}).ToList(); temp->data: data = temp.Select(x => new Data {i = x.i}).ToList();
newtee 2013-07-30
  • 打赏
  • 举报
回复
temp转data时间i,k去掉?
zwt379716066 2013-07-30
  • 打赏
  • 举报
回复
不好意思,我打的匆忙,弄好。 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相互转换?
newtee 2013-07-30
  • 打赏
  • 举报
回复
不现实的需求 List<Temp> data怎么转List<Data> data?? 把j,k去了? 而且你这描述的.....属性都写成字段了
zwt379716066 2013-07-30
  • 打赏
  • 举报
回复
能细说下嘛?新接触的,不是很理解。
Sharp789 2013-07-30
  • 打赏
  • 举报
回复
list.AsEnumeraibel() 也可以 其他 方法转换! LINQ API 函数多的

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧