public IEntitySearch <TEntity> SetRestrictProperty <TKey>(Expression <Func <TEntity, TKey> > keySelector) { if (keySelector.Body is MemberExpression && (keySelector.Body as MemberExpression).Member is PropertyInfo) { NonSearchableProperties.Add(((keySelector.Body as MemberExpression).Member as PropertyInfo)); } return(this); }
public List <PropertyInfo> GetSearchableProperties(IList <PropertyInfo> typeProperties) { return(typeProperties.Where(propertyInfo => !NonSearchableProperties.Any(nonSearchableProperty => nonSearchableProperty.Name == propertyInfo.Name) ).ToList()); }