で名前を検索するための効率的な方法私は、ユーザーが自分の名前で人を検索することができます検索バーを持つアプリケーション書いている - ファーストネーム、ミドルネーム、および姓EF6:のIQueryable
を検索入力は、名またはミドルネームまたは姓のいずれかです。または、最初と名前の組み合わせ。最初と中間の名前など....
またはフルネーム。
var result = People.Where(e => e.FirstName.ToLower().Contains(model.Name.ToLower()) || e.LastName.ToLower().Contains(model.Name.ToLower()) || e.MiddleName.ToLower().Contains(model.Name.ToLower()));
私は思ったんだけど、これが最も効率的な方法であるか、それを改善することができます。
は今、私はこれをやっていますか?
のチェックを検討することもでき真ん中の名前になっているのですが、どうしてFirstnameとwhere句のlastnameと比較しますか? – Nirman
中間名だけでなく、First、Middle、およびLastNameのいずれか、またはフルネームの組み合わせにすることができます。私は質問を更新しました。 – capiono
http://www.albahari.com/nutshell/predicatebuilder.aspxをご覧ください –