Trong dự án ASP.NET MVC 4, tôi có một mô hình cho tham gia (with payload):hồ sơ Filtering với IEnumerable.Select
public class LeagueMember
{
[Key, Column(Order = 0)]
public int MemberId { get; set; }
[Key, Column(Order = 1)]
public int LeagueId { get; set; }
public bool? IsActive { get; set; }
[Required]
public virtual League League { get; set; }
[Required]
public virtual Member Member { get; set; }
}
Tôi cố gắng để kéo tất cả các thành viên tích cực của các giải đấu. Vì vậy, trong mô hình League, tôi đã tạo ra một tài sản như thế này:
public virtual ICollection<LeagueMember> LeagueMembers { get; set; }
public IEnumerable<Member> GetActiveMembers
{
get
{
return LeagueMembers.Select(a => a.IsActive == true ? a.Member : null);
}
}
Nhưng có vẻ như nó sẽ trả về một bộ sưu tập với kích thước tương đương như của tất cả Members
(với các giá trị null cho các thành viên hoạt động).
Có cách nào tốt hơn để áp dụng bộ lọc theo phương pháp ẩn danh để tránh null không?
Chúng ta cần trả về '.Member', không phải' .IsActive' (bool). – Annie
Xem chỉnh sửa của tôi nếu bạn muốn nhận danh sách .Member thuộc tính của đối tượng được liệt kê trong 'LeagueMembers'. – lexeRoy
Đã hoạt động! Cảm ơn bạn. – Annie