this one과 관련된 질문이 있습니다. 계산 (집계)을 수행하고 싶지 않지만 연관성에서 표시 값을 가져와야합니다. 내 C# 코드에서는 Linq가 모든 필요한 배선을 생성하도록 외래 키 제약 조건을 설정했기 때문에이 값을 직접 참조 할 수 있습니다. Gridview 데이터 소스 속성으로 IQueryable을 지정하고 결과 집합에서 기본 엔터티의 열이 아닌 것을 참조하면 해당 열이 존재하지 않는다는 오류가 발생합니다. Linq의 초보자로서 할당을 암시하는 것으로 IQueryable을 목록으로 변환하고 연결이 손실됩니다. 제 질문은이 작업을 수행하는 좋은 방법입니다.Linq to SQL 및 Gridview 데이터 소스
나는 gridview에 필요한 모든 열을 포함하는 익명 형식을 반환하는 병렬 쿼리를 작성하여이 문제를 해결할 수 있다고 가정합니다. 그렇게함으로써 내가 이미 가지고있는 데이터를 중복 메모리에 보유하게 될 것 같습니다. 데이터 소스를 할당 할 때 즉석에서 메모리 내 데이터 구조를 쿼리 할 수 있습니까? 아니면 좀 더 직접적인 해결책이 있습니까?
gridview는 의사의 의료 그룹 연결을 표시해야하며 연결 이름은 찾아보기 테이블에 있습니다.
alt text http://heeroz.com/phys.jpg
IQueryable<Physician> ph =
from phys in db.Physicians
//from name in phys.PhysicianNames.DefaultIfEmpty()
//from lic in phys.PhysicianLicenseNums.DefaultIfEmpty()
//from addr in phys.PhysicianAddresses.DefaultIfEmpty()
//from npi in phys.PhysicianNPIs.DefaultIfEmpty()
//from assoc in phys.PhysicianMedGroups.DefaultIfEmpty()
where phys.BQID == bqid
select phys;
그래서, 데니스 '답변에 따라, 난 내 쿼리에서 모든 불필요한 물건을 제거했습니다. 나는 처음부터 올바른 질문을하지 않을 것이라고 생각했다.
어쨌든 페이지에는 의사의 데이터가 표시됩니다. 모든 의료 그룹 소속을 그리드에 표시하고자합니다 (사용자가 소속 그룹을 삽입, 편집 및 업데이트하도록합니다). 이제는 다른 테이블에 명시 적으로 참여할 필요가 없다는 것을 알았습니다. Linq이 저를 위해이 작업을 수행합니다. 자식 연결 체인을 통해 참조하여 별도의 테이블에있는 라이센스 번호에 액세스 할 수 있습니다. med_group_print_name에 액세스 할 수없는 때문에의 GridView를 들어,
AffiliationGrid.DataSource = ph.First().PhysicianMedGroups;
이 작동하지 않습니다 : 는 내 질문에 날 다시 가져다있는 gridview에서 의료 그룹 이름을 참조 할 수 없습니다
A field or property with the name 'med_group_print_name' was not found on the
selected data source.
을 다시, 만약 내가 Linq을 이해하지 못한다는 것이 너무 명백하다면 ... 나와 곰을.
예로드가 필요하지 않을 수도 있다고 생각했습니다. 나는 나의 질문을 개정했다. – cdonner
또는 오히려 곧 그렇게 할 것입니다. – cdonner
다음과 같이 나타납니다. 'MedGroupLookup.med_group_print_name'이라는 이름의 필드 또는 속성을 선택한 데이터 소스에서 찾을 수 없습니다. – cdonner