コード例 #1
0
 private Expression <Func <Seiyuu, bool> > ExtendExpressionWithSearchCriteria(Expression <Func <Seiyuu, bool> > predicate, SeiyuuSearchCriteria searchCriteria)
 {
     return(predicate
            .And(!string.IsNullOrWhiteSpace(searchCriteria.Name), () => seiyuu =>
                 seiyuu.Name.Contains(searchCriteria.Name, StringComparison.InvariantCultureIgnoreCase) ||
                 seiyuu.Name.SwapNameSurname().Contains(searchCriteria.Name, StringComparison.InvariantCultureIgnoreCase) ||
                 seiyuu.JapaneseName.Contains(searchCriteria.Name, StringComparison.InvariantCultureIgnoreCase)));
 }
コード例 #2
0
        public Expression <Func <Seiyuu, bool> > BuildExpression(SeiyuuSearchCriteria searchCriteria)
        {
            var predicate = PredicateBuilder.True <Seiyuu>();

            return(searchCriteria != null?ExtendExpressionWithSearchCriteria(predicate, searchCriteria) : predicate);
        }