저는 데이터베이스를 매핑하기 위해 EntityTypeConfiguration을 사용하고 있습니다.람다 식 내에서 개체 캐스팅
문제는 클래스 T_DOC_GENERIC이 T_DOC을 상속합니다. WithMany와의 관계를 설정하면 T_DOC로 선언 된 T_DOC_GENERIC 개체가 필요합니다.
public class T_DOC_GENERICMapper : EntityTypeConfiguration<T_DOC_GENERIC>
{
T_DOC_GENERICMapper()
{
this.ToTable("T_DOC");
this.HasKey(tDoc => tDoc.ID);
this.HasOptional(tDoc => tDoc.T_TYPE)
.WithMany(tType => tType.T_DOC)
.HasForeignKey(tDoc => tDoc.COD_TYPE);
}
}
암시 적 타입 변환 할 수 없습니다 'System.Collections.Generic.ICollection에게 < Protocol.Models.BaseEntities.T_DOC를>'에서 'System.Collections.Generic.ICollection < Protocol.Models.BaseEntities.GenericsEntities.T_DOC_GENERIC>' . 명시 적 변환이 존재합니다 (캐스트가 누락 되었습니까?). D : \ PortalProtocolo \ Models \ Mappers \ GenericsMappers \ T_DOC_GENERIC.cs
람다 식 내부에서 변환하는 방법이 있습니까?
.WithMany ((T_DOC) tType => tType.T_DOC)와 같은 명시 적 캐스트를 시도했지만 아이디어가 없습니다.
누군가 나를 도울 수 있습니까?
public T_DOC_GENERIC ConvertToGeneric(T_DOC source)
{
T_DOC_GENERIC destination = new T_DOC_GENERIC(){};
/* Map T_DOC source to T_DOC_GENERIC destination here */
return T_DOC_GENERIC;
}
당신은 기존의 클래스에이를 추가하거나 원하는 경우가 정적 만들 수 있습니다
작동하려면 캐스트를 람다 이후에 배치하십시오. '.WithMany (ttType => (T_DOC) tType.T_DOC)' – Khan
나는 시도했지만 여전히 작동하지 않습니다! – Pedro
나는 이것이 심지어 컴파일 될 것이라고 생각하지 않는다? 'T_DOC_GENERIC'이 typod 생성자 이름으로되어 있습니까? –