Por que o Entity Framework não seria capaz de usar ToString () em uma instrução LINQ?

estetrabalho no LINQ para SQL:

var customersTest = from c in db.Customers
                select new
                {
                    Id = c.Id,
                    Addresses = from a in db.Addresses where c.Id.ToString() == 
                        a.ReferenzId select a
                };

foreach (var item in customersTest)
{
    Console.WriteLine(item.Id);
}

Mas um exemplo semelhante no Entity Framework recebe ummensagem de erro que diz basicamente que não pode "traduzi-lo para SQL", aqui está a mensagem de erro original em alemão:

"'LINQ to Entities' erkennt die Methode 'System.String ToString ()' nicht, und diese Methode kann nicht in einen" "Speicherausdruck übersetzt werden".

Tradução:

"'LINQ to Entities' não reconhece o método 'System.String ToString ()', esse método não pode ser convertido em uma expressão de memória.

Alguém pode esclarecer como poderíamos fazer esse tipo de declaração funcionar no Entity Framework ou explicar por que ele recebe esse erro?

questionAnswers(4)

yourAnswerToTheQuestion