2017-11-20 9 views
2

문자열 기반 동적 Linq을 수행 중이며 중첩 된 where 절을 적용해야합니다.문자열 기반 동적 Linq - 중첩 된 위치

대답은 here입니다. 그러나 두 테이블의 열에는 일치하는 ID가 있습니다. 다음과 같이 별칭 또는 기타를 통해 참조 할 수 있어야합니다.

rolesCollection 
.Where("AssignedUsers.Where(AssignedUsers.TypId == rolesCollection.TypId).Any()"); 

어떤 방법으로 구현할 수 있습니까? 객체를 전달할 수있는 능력이 없습니다. 이것은 순수 API 기반 검색 방법의 문맥에서 문자열 기반 솔루션이어야합니다. 이것은 내가 필요로하는 것의 예일뿐입니다 ... 저는 코드를 통해 참여할 수있는 능력이 없습니다. 예제 코드의 문자열 기반 부분에서 솔루션을 찾고 있습니다.

+0

는 방대한 프로그램입니까? – Steve

+0

where 절에있는 문자열을 통해 조인을 할 수 있다면 그렇습니다. 좋은 생각. – michaelb

+0

AssignedUsers 개체를 사용할 수 있습니까? – Steve

답변

0

이 이론적 예에서는 AssignedUsers_Typ 수집을해야하고, 당신은 단순히 두 테이블에서 통상의 열을 참조 할 필요없이, 아래 참조 할 수 있습니다.

rolesCollection.Where("AssignedUsers_Typ.Any()"); 

이 솔루션을 사용하여 문제를 해결할 수있었습니다.

0

그런 것을 원하십니까? AssignedUsers 객체

rolesCollection = rolesCollection.Where(x => assignedUsers.Any(t => t.TypId == x.TypId)).ToList(); 
+0

아니요, 위의 예의 문자열 부분 내에서만 작업 할 수 있습니다. 나는 전통적인 linq을 할 수 없다. – michaelb