LINQ里的Union和Concat,不管用,啥原因呢??

woodyy 2009-06-16 03:13:01

IList<DepartmentTree> list0 = BLLDepartmentTree.Instance.FindAll().Where(o => o.ID == 0).ToList();
this.Response.Write(string.Format("list0:{0};<br /><br />", list0.Count));

IList<DepartmentTree> list1 = BLLDepartmentTree.Instance.FindAll().Where(o => o.ID == 1).ToList();
list0.Concat(list1);
this.Response.Write(string.Format("list1:{0};<br />", list1.Count));
this.Response.Write(string.Format("list0:{0};<br /><br />", list0.Count));

IList<DepartmentTree> list2 = BLLDepartmentTree.Instance.FindAll().Where(o => o.ID == 5).ToList();
list0.Concat(list2);
this.Response.Write(string.Format("list2:{0};<br />", list2.Count));
this.Response.Write(string.Format("list0:{0};<br /><br />", list0.Count));


我是用的linq to object。为什么那个list0.Count搞来搞去,一直是 =1 呀。

list0.Concat(list1);我也用Union了,都不行呀。好像并没起到作用。啥原因呢?

PS:数据里绝对没出现相同的两行,可是我也用Concat了呀。麻烦各位看看呀,谢谢
...全文
337 9 打赏 收藏 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xingbindi 2012-05-29
  • 打赏
  • 举报
回复
你好,我问一下,为什么Union不管用呢?
我试了Intersect和Except都可以使用的,就只有Union,怎么做都去除不了重复项。
是怎么回事呢?可以帮我回答一下吗?
william威廉 2010-06-08
  • 打赏
  • 举报
回复
天哪,我也是没赋值,原来是这样的。
yezie 2009-06-17
  • 打赏
  • 举报
回复
没有赋值我自己也出现过,发现后自己都觉得好笑,哈哈
woodyy 2009-06-16
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 flysnow_z 的回复:]
你犯了一个低级错误,你没有赋值。
list0=list0.Concat(list1).ToList();
[/Quote]

晕死,才发现,我说咋怎么都不管用呀!!!

不过语法还真奇怪,为什么还需要再赋值,直接list0.Concat不就合并了就可以了。

非要再赋值下,哎~奇怪的linq。谢谢flysnow~~

两天结贴,算是给大家一个反面教材吧。
哥斯达黎家 2009-06-16
  • 打赏
  • 举报
回复
你犯了一个低级错误,你没有赋值。
list0=list0.Concat(list1).ToList();
哥斯达黎家 2009-06-16
  • 打赏
  • 举报
回复
list0.Concat(list1).TOList();
试试看。
woodyy 2009-06-16
  • 打赏
  • 举报
回复
list0.Concat(list1);

list0.Concat(list2);

谢谢flysnow_z呀。我知道id == n,是只得到一条记录。

可是我有这么两条语句呀。不是合并了他们的结果集了吗?

那最后输出list0,相当于3个条记录的合并一起的呀。难道我理解错了吗??
哥斯达黎家 2009-06-16
  • 打赏
  • 举报
回复

List<Myclass> result =
DataContext.Reward_award.Where(x => x.sports.Contains(strQuery)).Select(x => x).ToList();

List<Myclass> a = DataContext.Reward_award.Where("1=1").ToList();

List<Myclass> bbb = result.Concat(a).ToList();



你看看我项目里的代码。我的bbb.Count 是正常的。
哥斯达黎家 2009-06-16
  • 打赏
  • 举报
回复
"o => o.ID == 0"

我没猜错的话,ID应该是你的主键。
那查出来Count结果不是1条记录是什么呢?
内容概要:本文研究了计及需求侧响应的日前、日内两阶段鲁棒备用优化问题,提出了一种基于数据驱动的两阶段分布鲁棒优化方法,结合1-范数和∞-范数构造不确定性集合,有效刻画风电、光伏出力及负荷等多重不确定因素的波动特性。研究构建了电热综合能源系统的联合优化模型,通过协调日前调度计划与日内实时调整,充分发挥需求侧响应资源的灵活调节能力,提升系统在不确定性环境下的备用充裕性与运行鲁棒性,并采用Matlab进行建模与仿真验证,结果表明该方法在保障系统安全的同时显著改善了经济性。; 适合人群:具备电力系统分析、优化理论基础及Matlab编程能力的研究生、科研人员,以及从事新型电力系统调度、综合能源系统规划与运行的工程技术人员。; 使用场景及目标:①应用于高比例可再生能源接入背景下电力系统备用容量的优化配置;②为综合能源系统在多重不确定性下的鲁棒调度提供决策支持;③支撑需求侧资源参与系统辅助服务的机制设计与仿真验证,推动源荷互动协调发展。; 阅读建议:建议读者结合Matlab代码深入理解两阶段鲁棒优化的建模过程,重点关注不确定性集构建、鲁棒约束转化及C&CG等求解算法的实现细节,可进一步拓展至其他分布鲁棒优化形式或耦合更多能源形式的综合能源系统场景。

8,492

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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