인터페이스에서 시작하여 실제 implmenetation으로 끝나는 몇 가지 상속 체인이 몇 단계 있습니다.EF 코어 : 매개 변수 유형을 매개 변수에 할당 할 수 없습니다.
class MyContext: DbContext{
public DbSet<ErrorModel> Errors {get; set}
}
이후
DbSet<IBaseModel> set = new MyContext().Errors
(를이 작동하지 :
그러나,이 코드는 내가 그런 일을 시도하고있다 그러나
IBaseModel model = new ErrorModel();
을 정확한 100 %이다 컴파일되지 않음)라고 말하면 인수 유형 DbSet<ErrorModel>
을 매개 변수에 할당 할 수 없습니다. DbSet<IBaseModel>
무엇이 문제이며 해결 방법은 무엇입니까?
UPD1 : 인터페이스 대신 기본 클래스를 사용하는 경우 작동하지 않습니다. 그리고 이런 코드는
IQueryable<IBaseModel> tests = new MyContext().Errors
도 별다른 문제없이 컴파일됩니다.