문자열을 사용하여 DbContext에서 데이터 검색

c# entity-framework entity-framework-core

문제

Entity Framework를 사용하면 다음과 같이 데이터베이스에서 데이터를 쉽게 얻을 수 있습니다.

var allBooks = BookContext.Books;

따라서이 코드는 "Book"테이블의 모든 책을 반환합니다.

하지만 필자는 데이터가 필요한 "테이블"이 무엇인지 알려주는 문자열을 다시 얻고 있습니다. 그래서 나는 이런 것을 가지고있다.

var allBooks = BookContext.Books;

문자열을 사용하여 BookContext 에서 데이터를 검색하는 방법이 있습니까?

수락 된 답변

EF7소스 코드를 살펴보면 이전 버전과 달리 DbContext 클래스에 Set(Type entityType) 메서드가 DbContext 것을 DbContext 있습니다. 일반 버전 Set<TEntity>() 있습니다.

그래서 나는 약간의 애매한 반영을 사용하지 않고는 불가능하다고 생각합니다. (애매 모호한 점은 DbSet 클래스의 비 제네릭 버전이 없기 때문에 반사에 의해 얻은 집합으로 작업하는 것이 매우 어렵 기 때문입니다)




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.