IEnumerable に入力された詳細ビューがあります。レンダリングされたレコードのリストにフィルターを追加できる一連のドロップダウンを備えたビュー。
これらのドロップダウンはすべて、MVC モデルのプロパティに対応しています。
public class Record
{
public string CustomerNumber { get; set; }
public string CustomerName { get; set; }
public string LineOfBusiness{ get; set; }
public DateTime? Date { get; set; }
}
現在、モデルを dto として使用して、コントローラーとレポの間でデータをシャッフルしています。ドロップダウン フィルターはすべてモデル プロパティを表しているため、モデルをレポ検索メソッドに渡し、そのプロパティをチェックし、その値に基づいてフィルター処理しますか? 言い換えると:
public IEnumerable<TradeSpendRecord> Get(TradeSpendRecord record)
{
IQueryable<tblTradeSpend> query = _context.tblRecords;
if (!String.IsNullOrEmpty(record.CustomerName))
query = query.Where(x => x.CustomerNumber == record.CustomerNumber);
if (!String.IsNullOrEmpty(record.LineOfBusiness))
query = query.Where(r => r.LOB == record.LineOfBusiness);
をちょきちょきと切る
これが主観的すぎないことを願っていますが、これが良い/悪い習慣であるかどうかについて誰かが意見を持っているかどうか疑問に思っています. 必要な動的フィルタリングの例はあまり見たことがなく、ガイダンスを探しています。
ありがとう、
クリス