从两个集合里排除重复的写法(适用: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排序后再按顺序比较.另一个办法就是计算各元 ...
随机推荐
- Bootstrap之表格checkbox复选框全选 [转]
转自: http://blog.csdn.net/shangmingchao/article/details/49761315 效果图: HTML中无需添加额外的一列来表示复选框,而是由JS完成,所以 ...
- Content-Type伪装 - 将jsp伪装成css
一.前期理论准备 1)目的: 在jsp中动态生成css语句,然后输出给浏览器解析.渲染. 2)浏览器解析文件的依据: 页面加载后,浏览器会发起各个请求去下载各种资源. 比如下载css文件,然后根 ...
- ubuntu glusterfs 配置调试
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqMAAADpCAIAAACfoakcAAAgAElEQVR4nO2d2XMjSX7f8c+sQ4GwHY
- 问题-[DelphiXE2]提示第三控件不存在
问题情况:在DelphiXE2启动时界面显示加载了控件,并且控件的路径也放在了环境变量中,但打开程序报第三控件不存在. 问题原因:是没有选择要加载的控件. 问题处理:点击Component->I ...
- php中的$_SERVER从哪来
前几个月学了个tcpdump抓包命令,遇到任何问题总想试试,真是程序员的终级武器呀,它像显微镜一下,把任何的丑陋的bug都显示在你的面前. 为什么有题目中所说的疑问呢?因为我发现在不同的环境下面,我获 ...
- Java- Jdbc学习
java jdbc test jsbc: package cn.honji.sqlserver; import java.sql.Connection; import java.sql.ResultS ...
- 【C语言】编写一个函数实现n^k,使用递归实现
#include <stdio.h> int fuc(int x,int n) { if(n!=1) return x*fuc(x,n-1); return 1; } int main() ...
- careercup-递归和动态规划 9.6
9.6 实现一种算法,打印n对括号的全部有效组合(即左右括号正确配对). 类似leetcode:Generate Parentheses 解法: 从头开始构造字符串,从而避免出现重复字符串.在这个解法 ...
- 标准I/O库之打开和关闭流
下列三个函数打开一个标准I/O流. #include <stdio.h> FILE *fopen( const char *restrict pathname, const char *r ...
- IIS8无法调用Oracle.DataAccess .dll问题
之前在.net平台下操作Oracle都是用的oracle.dataaccell.dll引用,但是服务器升级为II8后,发布的新服务有关Oracle数据库部分都无法运行,调试了好久发现是IIS8不支持低 ...