首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

Linq如何去掉重复名称的数据

2012-12-21 
Linq怎么去掉重复名称的数据?数据库表create table SuperuserInfo--权限管理( SuperuserInfo_Id int prima

Linq怎么去掉重复名称的数据?
数据库表
create table SuperuserInfo--权限管理

SuperuserInfo_Id int primary key identity(1,1),--权限ID
DpmID int foreign key references DepartmentManagement(DpmID)not null,--部门
JmgID int foreign key references JobManagement(JmgID),--职位
SuperuserInfo_Poslition varchar(40),--职位(部门+职位)
SuperuserInfo_PrivilegeDescribe varchar(150) not null,--权限描述
MenuManagementInfo_Id int foreign key references MenuManagementInfo(MenuManagementInfo_Id) not null,--权限编号
SAddWordO varchar(20) null,                          --预留字段1
SAddWordT varchar(20) null                           --预留字段2
)
      
var sup = ctx.SuperuserInfo.ToList();
            List<SuperuserInfo> list = new List<SuperuserInfo>();
            foreach (var item in sup)
            {
                var key = item.SuperuserInfo_Poslition;
                var userlist = (from user in ctx.SuperuserInfo
                                where user.SuperuserInfo_Poslition(key)
                                select user).Distinct();
            }
key报错。。
这个我该怎么去掉SuperuserInfo_Poslition重复的数据?
[解决办法]
group by  user.SuperuserInfo_Poslition

[解决办法]
var SuperuserInfo_Poslitions=ctx.SuperuserInfo.Select(s=>s.SuperuserInfo_Poslition).Distinct().ToList();
这样得到所有的名称 
[解决办法]
  var SuperuserInfo_Poslitions = ctx.SuperuserInfo.Select(s => s.SuperuserInfo_Poslition).Distinct().ToList();
            List<SuperuserInfo> list = new List<SuperuserInfo>();

            for (int j = 0; j < SuperuserInfo_Poslitions.Count; j++)
            {
                list.Add(ctx.SuperuserInfo.FirstOrDefault(s => s.SuperuserInfo_Poslition == SuperuserInfo_Poslitions[j].ToString()));
            }

热点排行