저는 Linq를 사용하여 데이터베이스에서 항목을 선택하고 Entity Framework에서 항목을 만듭니다. 또한 Entity Framework는 함수 가져 오기 마법사를 사용하여 복합 형식을 만들었습니다. Complex Types를 사용하여 질의를 반환 할 때마다 Complex Return Type으로 결과를 캐스팅하려고 할 때 null 값을 얻습니다.Linq Casting 복잡한 유형으로 반환 유형
private AWorksLTEntities db = new AWorksLTEntities();
public IQueryable<SelectAll_Result> SelectAllMethod()
{
var result = from p in db.Products
select p;
return result as IQueryable<SelectAll_Result>;
}
SelectAll_Result은 EntityFrameworks에 의해 생성 된 복합 형이고 캐스트가 작동하지 않고 내 메소드는 null를 돌려줍니다.
일반 엔티티를 사용하여 동일한 코드 값
을 반환하지private AWorksLTEntities db = new AWorksLTEntities();
public Product SelectAllMethod()
{
var result = from p in db.Products
select p;
return result;
}
내 문제는이 예제는 매우 간단합니다 동안, 나는이를 만드는 오전 것은 내가 일하고 코드 생성기, 및 반환 유형을 사용하여 쿼리이다 확인하기가 어렵 기 때문에 표준 엔티티 반환 대신 엔티티 프레임 워크 함수 가져 오기에서 생성 된 복합 반환 유형을 사용할 수 있어야합니다.
아이디어가 있으십니까? 미리 감사드립니다.
EF에서 생성 한'SelectAllMethod'는 있습니까? –
아니, 내가 작업중인 T4 템플릿에 의해 생성됩니다. 저장 프로 시저로드를 파싱하고 메서드를 만드는 중입니다. 그것들은 즉석에서 생성되기 때문에 EF 엔티티를 코딩하는 것보다 복잡한 returntypes를 사용해야합니다. –