2013-10-29 3 views
0

Entity Framework (코드 우선)에서 사용하는 클래스 구조가 있습니다.EF5 자동으로 탐색 속성 정렬

public class Product 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 

    public virtual ICollection<Image> Images { get; set; } 
} 

public class Image 
{ 
    public int Id { get; set; } 
    public int Order { get; set; } 
} 

Image 클래스는 기본적으로 정렬을 처리 할 수있는 Order 필드가 있습니다. 내 응용 프로그램의 어떤 시점에서 나는 같은 줄을 씁니다; 나는 나를 사방 product.Images.OrderBy(x => x.Order)를 작성할 필요없이 product.Images를 요청할 때 Images 자동으로 Order 필드를 기준으로 정렬 할 수 있도록

BindImages(product.Images); 

는 내가 좋아하는 것 같습니다.

누구에게 의견이 있습니까?

답변

2

EF는 당신이 원하는 것을 할 수 없습니다. 그러나 당신은 이것을 할 수 있습니다. 유형에 다른 속성을 추가 할 수 있습니다.

public IEnumerable<Image> OrderedImages 
{ 
    get{return Images.OrderBy(x => x.Order); } 
} 

대신 이전 컬렉션을 사용하십시오.

+0

EF가 변경 사항에 대해 불평을하지 않게하려면 [NotMapped] 속성을 추가해야 할 수도 있습니다. –