LINQ no puede usar string.contains?

Este es mi código:

string queryString = "Marco".ToLower();
utenti = db.User.Where(p => 
        queryString.Contains(p.Nickname.ToLower()) ||
            queryString.Contains(p.Nome.ToLower()) ||
            queryString.Contains(p.Cognome.ToLower())).ToList();

pero me sale

Solo los argumentos que se pueden evaluar en el cliente son compatibles con el método String.Contains.

¿Por qué? No puedo usar.Contains()?

Respuestas a la pregunta(2)

Su respuesta a la pregunta