検索機能の実装方法がわかりましたか?linq述部を使用してアクションを検索します。 ASP.NET MVC
私はそれについてどのように想像してみましょう。この例ではemployee
モデルを使用します。だから、employee
はむしろ標準的なプロパティを持っています: 'Id'、EmployeeId
、Name
、Birthday
。
私Repository
オブジェクトが保持している方法のように:
IQueryable<T> Get(Expression<Func<T, Boolean>> predicate);
それではSearch
アクションは、テキストボックスでフォームを開催する
[HttpPost]
public ViewResult Search(Guid Id, Guid EmployeeId, String Name, DateTime birthday)
{
// call repository.get(x => x.Name == Name && x.Id == Id ...);
}
Search
ビューのようになります(EmployeeController
に属します)検索基準/アクションパラメータに対応する。
しかし、そこには検索能力がモデル/コントローラに結合されています。だから私はコントローラごとに同様のアクションを作成する必要があります。
どのようにすればいいですか?
ありがとうございます!
いいえ。どういたしまして。事は述語反復ではありません(明らかに述語は異なるでしょう)。物事はコントローラーを越えて行動の繰り返しにある。私はおそらく私は離れて 'Search'機能を抽象化することができますか? – lexeme
私は、私はあなたが同様の検索フォームを各ビューのエンティティの種類ごとに持っていると言っていますか?またはヘッダーのように、複数のビューにわたって使用する必要のある1つの検索フォームがあるとしていますか? – devdigital
今のところ私はどちらも持っていません。しかし、あなたの最後の選択肢は私が望むものです。私はリポジトリクラスを変更したくありません。しかし、私はあなたがアドバイスしたことを検討するつもりです。 – lexeme