По сути, все, что вам нужно сделать, это добавить условия в IQueryable на основе ваших динамических параметров. Например:
string productName = Request.Querystring[ProductName];
IQueryable<Product> productQuery = Product.All();
if(productName != null)
{
productQuery = productQuery.Where(product => product.Name == productName);
}
IList<Product> filteredList = productQuery.ToList();