从两个集合里排除重复的写法(适用:DB表和字段都很多,表间有关联的情况)
获取其中一张表bulletinred为1的内容:
public IList<BRShow> GetBulInfo()
{
var result = from a in ((Entities)this.DataContext).SPEPBULLETIN
join b in ((Entities)this.DataContext).USERS on a.USERID.ToUpper() equals b.ACCOUNT.ToUpper() orderby a.POSTDATE descending
select new BRShow { ID = a.ID, TITLE = a.TITLE, NAME = b.NAME, POST_LEVEL = a.POST_LEVEL, POSTCONTENT = a.POSTCONTENT, POSTDATE = a.POSTDATE, bulletinread = }; //查询出所有信息 //20140402 By Xudaxia 遍历result,取得为1的条数
var result2 = (from r in result
join b in ((Entities)this.DataContext).BULLETIN_RECORDS
on r.ID equals b.ID
select r).ToList();
foreach (var r in result2) { r.bulletinread = ; };
return result2;
}
获取表所有信息:
public IList<BRShow> GetBulInfo1()
{
var spepbulletins = ((Entities)this.DataContext).SPEPBULLETIN.ToList();
var users = ((Entities)this.DataContext).USERS.ToList();
var result = from a in spepbulletins
join b in users on a.USERID.ToUpper() equals b.ACCOUNT.ToUpper()
orderby a.POSTDATE descending
select new BRShow { ID = a.ID, TITLE = a.TITLE, NAME = b.NAME, POST_LEVEL = a.POST_LEVEL, POSTCONTENT = a.POSTCONTENT, POSTDATE = a.POSTDATE}; //查处所有信息(含未读和已读)
return result.ToList();
}
在页面上调用,转为LIST后在所有信息中遍历取得ID,判断A表和B表的ID是否一致,如果一直则将bulletinred赋值为1
List<BRShow> list = bulRep.GetBulInfo().ToList();//查处所有已读信息
List<BRShow> list1 = bulRep.GetBulInfo1().ToList();
foreach (BRShow b in list)
{
if (list1.Where(l => l.ID == b.ID).First() != null)
list1.Where(l => l.ID == b.ID).First().bulletinread = ;
}
最后取得所有相关内容
List<BRShow> tt = list1;
----附:欢迎大家提出更简便、性能更好的方法~
从两个集合里排除重复的写法(适用:DB表和字段都很多,表间有关联的情况)的更多相关文章
- SQL技巧两则:选择一个表的字段插入另一个表,根据其它表的字段更新本表内容
最近,在作django数据表迁移时用到的. 因为在django中,我把本来一个字符型字段,更改成了外键, 于是,哦喝~~~字符型字段相当于被删除了, 为了能导入这些字段的外键信息,于是出此下策. 其实 ...
- 从两个List集合里找到相同部分和不同部分
/** * 获取两个集合里元素不同的部分 */ public List<User> getDifferent(List<User> u1, List<User> u ...
- Java 单个集合去重与两个集合去重
一.单个集合去重 描述: 去掉一个集合里重复的元素:将list集合转成hashSet集合,hashSet有自动去重的功能,再利用去重后的hashSet集合初始化一个新的list集合,此时这个list就 ...
- Java对比两个数据库中的表和字段,写个冷门的东西
Java对比两个数据库中的表和字段,写个冷门的东西 转载的 来源网络 目前所在的项目组距离下个版本上线已经很近了,就面临了一个问题:开发人员在开发库上根据需要增加数据表.数据字段.或者变更了字段类型或 ...
- Newtonsoft.Json C# Json序列化和反序列化工具的使用、类型方法大全 C# 算法题系列(二) 各位相加、整数反转、回文数、罗马数字转整数 C# 算法题系列(一) 两数之和、无重复字符的最长子串 DateTime Tips c#发送邮件,可发送多个附件 MVC图片上传详解
Newtonsoft.Json C# Json序列化和反序列化工具的使用.类型方法大全 Newtonsoft.Json Newtonsoft.Json 是.Net平台操作Json的工具,他的介绍就 ...
- c#封装DBHelper类 c# 图片加水印 (摘)C#生成随机数的三种方法 使用LINQ、Lambda 表达式 、委托快速比较两个集合,找出需要新增、修改、删除的对象 c# 制作正方形图片 JavaScript 事件循环及异步原理(完全指北)
c#封装DBHelper类 public enum EffentNextType { /// <summary> /// 对其他语句无任何影响 /// </summary> ...
- 使用LINQ、Lambda 表达式 、委托快速比较两个集合,找出需要新增、修改、删除的对象
本文需要对C#里的LINQ.Lambda 表达式 .委托有一定了解. 在工作中,经常遇到需要对比两个集合的场景,如: 页面集合数据修改,需要保存到数据库 全量同步上游数据到本系统数据库 在这些场景中, ...
- jquery 排除重复
应用场景——双盒选择器 两个select可能会出现重复的情况 排除重复代码如下: /** * 删除$fromGroup中与$toGroup重复的option * @param $fromGroup = ...
- C# 判断两个集合(List)是否相等
1.两个list如果有重复元素(如List1: a,b,a List2: b,b,a) 是无法通过包含关系来判断是否相等的. 有两个办法,其一是两个List排序后再按顺序比较.另一个办法就是计算各元 ...
随机推荐
- apple mac 下使用机械键盘的办法,键盘映射工具软件,apple mac Mechanical keyboard
apple mac 下使用机械键盘的办法,键盘映射工具软件,apple mac Mechanical keyboard 想在苹果电脑 mac 系统下使用 机械键盘,大部分机械键盘不是为mac设计的,所 ...
- 多线程归并排序(摘自githhub)
package com.rationalcoding.sort; import java.util.ArrayList; import java.util.Arrays; import java.ut ...
- SPI协议及其工作原理浅析
转载自:http://bbs.chinaunix.net/thread-1916003-1-1.html一.概述. SPI, Serial Perripheral Interface, 串行外围设备接 ...
- 使用Hadoop打造私有云盘之API操作
项目介绍:使用hadoop实现云盘的增删读获取列表功能,hadoop不支持数据修改,特性是一次写入多次读取.主流的网盘也不支持该功能.今天我们用hdfs的FileSystem实现这些操作. 1.上传功 ...
- 算法导论学习-Dynamic Programming
转载自:http://blog.csdn.net/speedme/article/details/24231197 1. 什么是动态规划 ------------------------------- ...
- mongoDB中的连接池(转载)
一.mongoDB中的连接池 刚上手MongoDB,在做应用时,受以前使用关系型数据库的影响,会考虑数据库连接池的问题! 关系型数据库中,我们做连接池无非就是事先建立好N个连接(connection) ...
- 49. Sort Letters by Case
最后更新 一刷 还是Partition,只不过这次是按照大小写字母来. public class Solution { public void sortLetters(char[] chars) { ...
- JS----JS调试技巧
骨灰级调试大师Alert 那还是互联网刚刚起步的时代,网页前端还主要以内容展示为主,浏览器脚本还只能为页面提供非常简单的辅助功能的时候.那个时候,网页主要运行在以IE6为主的浏览器中,JS的调试功能还 ...
- HTML5终极备忘大全
二.文字备忘之标签 HTML5中新增的标签 <article> 定义文章 <aside> 定义页面内容旁边的内容 <audio> 定义声音内容 <canvas ...
- MySQL 5.7 for Windows 解压缩版 MySQL 服务无法启动
MySQL 5.7 for Windows 解压缩版配置安装 http://jingyan.baidu.com/article/f3ad7d0ffc061a09c3345bf0.html basedi ...