다시 멍청한 질문/시나리오로 나에게 조언이 필요해.LINQ 가입 필요?
나는 컬럼의 내용을 다시 끌어 다음과 같습니다
return getappropriateuserfield.tblAutoComplete
.Where(p => p.MemberId == memberid && p.ACItem == acitem)
.Select(p => p.ACColumn)
.Distinct()
.ToArray();
이 결과에 따라, 그때 경우 ACColumn 결과를 가지고 tblPreferences로 이동의 ColumnName을보고,하고 싶은지도
MemberID ACItem ACColumn
1 2 UUF1
tblPreferences 외모 : 그것은 예를 들어 우리가 tblAutoComplete이,
그래서 (tblPreferences에 존재) 별칭을 철수, 거기에있는 항목과 일치 같은
MemberID ColumnName Alias
1 UUF1 Category
ACItem으로 "2"의 사용자 스틱, 첫 번째 부분의 결과가 "UUF1을"될 경우 - LINQ는 위의이 작업을 수행합니다.
두 번째 부분이 일어나도록 linq를 어떻게 변경합니까? UUF1을 취하고, tblPreferences를보고, ColumnName을 체크하고, 결과가 일치하므로 최종 결과가 별칭 인 "Category"가됩니다.
두 부분으로 처리해야합니까, 아니면 하나의 쿼리로 처리 할 수 있습니까? 조인 사용?
두께에 사과드립니다. 당신이 반복을 얻을 수 있음을 의미 내가 여기 Distinct()
호출을 제거했습니다
var query = from ac in foo.tblAutoComplete
where ac.MemberId == memberid && ac.ACItem == acitem
join pref in foo.tblPreferences.Where(x => x.MemberId == memberid)
on ac.ACColumn equals pref.ColumnName
select pref.Category;
참고 : A는 아마도 가장 쉽게 쿼리 식으로 표현되는, 나에게 가입 같은
memberId의 가입도 가능합니다. 아마도 최고입니다. –
@ 리카르도 : 편집 됨. 이것은 조인이 아니라 여분의 where 절에 있습니다. –