저는 엔터티 프레임 워크와 ria 서비스를 사용하고 있습니다. 매핑과 상속에 문제가 있습니다. 나는 100 개 이상의 열이있는 (기존의) 테이블을 가지고 있으며 이것을 tblFacility라고 부르며 EF 디자이너로 가져 왔습니다. 나는 가능한 한 적은 대역폭을 사용하기를 원하며 대부분의 경우 두 열만 필요합니다 (ID와 설명). 그래서 다른 엔티티 인 Facility를 추가하고이를 tblFacility에 매핑하고 두 개의 열을 매핑하여 키 ID를 설정했습니다. 그런 다음 엔티티 tblFacility의 기본 클래스를 Facility로 설정합니다.EF 상속/기본 클래스 질문
오류가 있습니다. 오류 3032 : 조각 시작 줄을 매핑하는 중 .... .... 엔티티 형식 dbModel.tblFaclity, dbModel.Facility가 테이블 tblMembers의 동일한 행에 매핑됩니다. 매핑 조건은 이러한 형식이 매핑되는 행을 구별하는 데 사용할 수 있습니다.
디자이너에는 두 개의 필드 (하나의 키/ID, 설명 하나)가있는 Facility가 있으며 방금 설명한 두 개의 열이 tblFacility에 없습니다. 난 내 클라이언트는 시설을 필요로하고 tblFacility를 필요로하지 않는이 시점에서 오류
<EntitySetMapping Name="Facilities">
<EntityTypeMapping TypeName="IsTypeOf(dbModel.Facility)">
<MappingFragment StoreEntitySet="tblFacility">
<ScalarProperty Name="Number" ColumnName="intFaclNbr" />
<ScalarProperty Name="Name" ColumnName="vcFaclName" />
</MappingFragment>
</EntityTypeMapping>
<EntityTypeMapping xmlns="http://schemas.microsoft.com/ado/2008/09/mapping/cs" TypeName="HSCAMasterModel.tblMember">
<MappingFragment StoreEntitySet=" tblFacility">
<ScalarProperty Name="Number" ColumnName="intFaclNbr" /> <ScalarProperty Name="vcAddr1" ColumnName="vcAddr1" />
<!--...over 100 more columns, name is not one of them...-->
</MappingFragment>
</EntityTypeMapping>
</EntitySetMapping>
을 얻고 곳 edmx 파일은 다음과 같다 있지만 도메인 서비스는 tblFacility 클래스를 필요로하지 않습니다. 이 Facility 기본 클래스를 IQueryable로 사용하고 싶었습니다. 이것은 의미가 있습니까? 아니면 EF를 사용해야하는 기반을 벗어 났습니까? 감사합니다.
감사합니다. 두 가지 모두 해결책입니다. – zBomb