Linq에서 SQL 로의 간단한 다 대다 관계 (즉, 단순 조인)에 익숙하지만 지금 당장 생각하고 있습니다.Linq to SQL - 다 대다 (many to many) 술어
나는 분류 체계를 나타내는 3 개의 테이블을 가지고있다. (그래서, Linq-to-SQL 모델에 엔티티가있다.) 정말 표준 문제 :
제품 - ProductTags - 태그
나는 그들이에있어 태그가 검색어와 일치합니다 제품의 집합을 반환하는 방법을 쓰고 있어요. 따라서 누군가 "foo"를 검색하면 "foobar"또는 "fooqux"태그 ("bazbar"제외)가 할당 된 모든 제품이 반환됩니다.
두 부분으로 쿼리를 구성해야한다는 것을 알고 있습니다. 먼저 일치하는 태그를 가져온 다음 해당 태그가있는 제품을 가져와야합니다. 그것은 내가 뒤 쫒 았던 두 번째 부분입니다.
는 여기에 지금까지있어 무엇 :
var tags = from t in db.Tags
where t.Name.Contains(tagSearchQuery)
select t;
var products = from p in db.Products
// then a miracle happens
select p;
지원을 많이 감사합니다 :) 그냥 ProductTags
테이블을 시작하는 경우