C #의 DataSets 행 필터에 대한 LINQ 용 구문?
-
18-09-2020 - |
문제
두 개의 DataTables 하나는 기본 테이블이고 나머지는 하위 테이블입니다 (강력하게 입력 된 데이터 세트를 사용하고 있습니다).
예제
직원 테이블
Id Name City
1 AAA NY
2 BBB BB
3 CCC AA
.
centinitials 테이블
CityInitial
NY
FF
CC
RR
RNF
YOT
DDD
.
직원 테이블의 '도시'가 동시에있는 것과 일치하는 경우에만 직원 테이블에서 행을 선택해야합니다. 시대의 테이블.나는
를 시도했다var _filter = EmployeeTable.AsEnumerable().
Select(x=>x.Field<string>("City")).Contains
(CityInitials.AsEnumerable().Field<string>("CityInitials").Select(row=>row);
.
결과를 얻으려면 적절한 쿼리가 무엇인지 제안하십시오.
해결책
실제로 데이터 세트를 입력하는 것으로 가정합니까?당신이 일하는 것을 정확히 알지 못하면, 나는 내가 일할 것으로 기대하는 것의 근사치를 다음과 같이 부를 것입니다 :
var cities = CityInitials.Rows.Select(x => x.CityInitials).ToList();
var _filter = EmployeeTable.Rows.Where(x => cities.Contains(x.City));
. 제휴하지 않습니다 StackOverflow