2010-06-14 4 views
0

에서 결과를 가져올 수 없습니다 I 엔티티에 Linq에 다음 코드가 있습니다가 된 IQueryable

var policy= from pol in conn.Policy 
      where pol.Product.DESCRIPTION=="someProduct" 
      SELECT pol; 

그런 다음, 테이블 정책, 엔티티라는 테이블에 대한 일부 종속성이 있습니다. 그것은 말한다

foreach(Policy p in policy){ 
    if(!p.Entity.IsLoaded) p.Entity.Load(); 
    IEnumerable<Entity> entities= from ent in p.Entity 
            Where ent.EntityType.DESCRIPTION=="SomeEntityType" 
            select ent; 
    Console.Writeline(entities.ElementAt(0).NAME); 
} 

, "인스턴스로 설정 개체 없음"하지만 내가 할 경우 :

foreach(Policy p in policy){ 
    if(!p.Entity.IsLoaded) p.Entity.Load(); 

    foreach(Entity et in p.Entity)Console.Write(et.NAME); 

} 

그것은 작동 내가 이렇게 할 경우! 누구나 그 이유를 말해 줄 수 있습니까?

감사합니다.

답변

0

귀하의 LINQ 문이 어떤 값도 반환하지 않아서라고 말하고 싶습니다. entities은 null입니다.

두 번째 예제는 결과를 필터링하지 않기 때문에 효과가 있습니다.

DESCRIPTION이 정확히 문자열 (대소 문자 포함)로 설정된 엔티티가 있습니까?