내 응용 프로그램은 asp.net 4, C# 및 Entity Framework를 사용합니다. 내 데이터베이스 Companies
많은 Locations
, 차례로 많은 Devices
있는 테이블이 포함되어 있습니다. Company
은 내가 표시 한 Company
의 Locations
및 Devices
을 편집 그리드 뷰를 사용합니다.Entity Framework를 사용하여 제한된 테이블의 열로 필터링
현재 로그온되어있는 aspnet_user에 키가 있습니다. 그들이 Company
에 대한 직접 링크를 가지고이 쉽게
LocationListEntityDataSource.AutoGenerateWhereClause = true;
LocationListEntityDataSource.WhereParameters.Clear();
LocationListEntityDataSource.WhereParameters.Add("CompanyGuid", System.Data.DbType.Guid, Tools.Tools.getCompanyGuidString());
그러나 나는 그들이 단지
Location
에 대한 링크를 가지고
Company
하여
Devices
을 필터링하는 방법을 작동하지 않을 수 있습니다 ...
Locations
달성된다. 이 달성 할 수있는 방법에
DeviceListEntityDataSource.AutoGenerateWhereClause = true;
DeviceListEntityDataSource.WhereParameters.Clear();
DeviceListEntityDataSource.WhereParameters.Add("Location.CompanyGuid", System.Data.DbType.Guid, Tools.Tools.getCompanyGuidString());
어떤 아이디어 ... 나는 다음과 유사한 것을 사용하는 희망을 가지고,하지만 난 Location.CompanyGuid
을 찾을 수 없다는 예외가?
이 엔티티 프레임 워크 질문과 모델링/스키마 질문에 대한 설명이 적습니다. 태그를 다시 지정 (예 : [tag : asp.net]을 제거하고 [tag : database-schema]를 추가)하고 현재 스키마와 엔티티의 다이어그램을 추가해야합니다. –
모델의 대부분 또는 최소 버전을 설명 할 수 있습니까? 귀하의 경우 왜 회사는 위치뿐만 아니라 디바이스와도 일대 다 많은 관계가 있습니다. 장치를 추가하는 것처럼 먼저 위치를 만듭니다. 그런 다음'location.Devices.Add (device'). 그리고 나서'dbconext.Companies.Add (location); –
"Company는 Locations와 Devices와 일대일로 많은 관계가 있습니다."- 나는 장치와 위치를 의미한다고 가정합니다. 나는 이것을 고려해 보았지만, 위치에 연결되어있는 다른 테이블도 많이있다. 공간을 절약하기 위해 나는 회사가 많은 수의 테이블을 회사에 연결하는 것을 피하고자했다. 회사가 위치에서 추정 할 수 있다고 가정했을 때 – user1374841