String.IsNullOrWhiteSpace en LINQ Expression

Tengo el siguiente código

return this.ObjectContext.BranchCostDetails.Where(
    b => b.TarrifId == tariffId && b.Diameter == diameter
        || (b.TarrifId==tariffId && !string.IsNullOrWhiteSpace(b.Diameter))
        || (!b.TarrifId.HasValue) && b.Diameter==diameter);

Y obtengo este error cuando intento ejecutar el código:

LINQ to Entities no reconoce el método 'Boolean IsNullOrWhiteSpace (System.String)', y este método no se puede traducir a una expresión de tienda. "

¿Cómo puedo resolver este problema y escribir código mejor que esto?

Respuestas a la pregunta(8)

Su respuesta a la pregunta