分部类 添加字段操作

public List<TblAreaInfo> QueryAllList(string AreaCode, string AreaName, int pageIndex, int pageSize, out int totalCount)
{
List<TblAreaInfo> list = new List<TblAreaInfo>();
try
{
//查询所有主管
var areaZhuGuan = dataContext.TblLoginInfo.Where(item => item.intRoleId == 2);
//查询所有的经理
var areaJingLi = dataContext.TblLoginInfo.Where(item => item.intRoleId == 3);

//将经理和主管按照区域进行合并
var resultList = from zhuguan in areaZhuGuan
from jingli in areaJingLi
where zhuguan.intAreaId == jingli.intAreaId
where jingli.TblAreaInfo.chvAreaCode.Contains(AreaCode)
where jingli.TblAreaInfo.chvAreaName.Contains(AreaName)
select new
{
//因为主管和经理在where条件中已经进行合并处理:即:zhuguan和jingli是同一地区的,所以在查询区域信息的时候使用主管或经理都是一样的结果
AreaId = jingli.intAreaId,
chvAreaCode = jingli.TblAreaInfo.chvAreaCode,
chvAreaName = jingli.TblAreaInfo.chvAreaName,
directorName = zhuguan.chvUserName,
directorPhone = zhuguan.chvPhone,
RoleName = jingli.chvUserName,
RolePhone = jingli.chvPhone
};

//遍历每一条数据
resultList.ToList().ForEach(item =>
{
list.Add(new TblAreaInfo()
{
//给每一条合并后的数据赋值
IntAreaId = Convert.ToInt32(item.AreaId),
chvAreaCode = item.chvAreaCode,
chvAreaName = item.chvAreaName,
directorName = item.directorName,
directorPhone = item.directorPhone,
RoleName = item.RoleName,
RolePhone = item.RolePhone
});
});
//获取数据数量
totalCount = list.Count();

//Skip 制定列表中的元素,返回剩余的元素
list = list.Skip(pageIndex * pageSize).Take(pageSize).ToList();

//返回查询到得全部信息
return list;
}
catch (Exception e)
{
throw e;
}
}

转载于:https://www.cnblogs.com/chenhai/archive/2013/03/07/2948794.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值