public override IEnumerable <Material> Query(IExpression <Material> expression) { if (expression.IsSimpleWhereToken()) { var number = expression.GetWhereValuesAsString("Number"); Log.InfoFormat("Single query for item number {0}", number); var material = ErpManager.GetMaterialyByNumber(number); if (material != null) { return new[] { material } } ; return(Enumerable.Empty <Material>()); } var searchSettings = GetSearchSettings(expression); return(ErpManager.SearchMaterials(searchSettings)); }