ASP.NET MVC 4 でコード ファースト アプローチを使用してアプリケーションを作成しました。
私は3つのエンティティを持っています。つまり、「Company」、「Service」、および「ServiceFeature」:
public class Company
{
public int CompanyID { get; set; }
[Required]
public string Name { get; set; }
[Required]
public string Description { get; set; }
public virtual Service SuppliedService { get; set; }
}
public class Service
{
public int ServiceID { get; set; }
[Required]
public string Name { get; set; }
public virtual ICollection<ServiceFeature> ServiceFeatures { get; set; }
}
public class ServiceFeature
{
public int ServiceFeatureID { get; set; }
[Required]
public string Name { get; set; }
}
検索フォームがあります。これは、すべての ServiceFeatures のチェックボックスで構成されています。ユーザーはチェックボックスを選択し、選択した ServiceFeatures をサービスに提供している会社の結果を取得します。
以下のように自分のサービスで Company リストを取得しますが、選択した ServiceFeatures を where 句に含める方法に行き詰まっています (for ループを使用した動的 LINQ ?)
var searchResults = _companyService.GetCompanies();