将项目列表与DataTable中的一个列进行比较
本文关键字:一个 比较 列表 项目 DataTable | 更新日期: 2023-09-27 17:50:40
我有一个2列的数据表(ProjectId, ServerGroupID
)
DataTable projectRestrictionList = new DataTable();
projectRestrictionList =
GetProjectRestrictionDatatable(projectID, serverGroupIds);
我有一个项目列表"sgRestrictedServerGroups"
List<Dell.AFP.Entity.ServerGroup> sgRestrictedServerGroups =
prjctInfoResponse.RestrictedServerGroupList;
现在我想比较sgRestrictedServerGroups
的列表与表中的列ServergroupId,并需要在列表中得到结果。
有人能帮帮忙吗?
您需要的是服务器组id上的两个序列的简单连接。假设ServerGroupID包含整数值,并且您的ServerGroup
实体中的id属性名称为Id
:
var result = from r in projectRestrictionList.AsEnumerable()
join sg in sgRestrictedServerGroups
on r.Field<int>("ServerGroupID") equals sg.Id
select sg;
可以随意使用属性名和列类型
用join
试试linq语句:
编辑:
var tabletolist = projectRestrictionList.AsEnumerable().ToList();
var restricted = from p in tabletolist
join s in sgRestrictedServerGroups
on p.ServerGroupID equals s.ServerGroupID
select p;