protected IQueryable <T> DataSource() { var query = dataContext.Set <T>().AsQueryable <T>(); var property = typeof(T).GetProperty("Deleted"); if (property != null) { query = query.Where(GetExpression("Deleted", null)); } return(query); }