Warum kann Entity Framework ToString () in einer LINQ-Anweisung nicht verwenden?

Diesefunktioniert in LINQ-to-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);
}

Aber ein ähnliches Beispiel in Entity Framework erhält eineFehlermeldung das sagt im Grunde, dass es nicht "in SQL übersetzen" kann, hier ist die ursprüngliche Fehlermeldung auf Deutsch:

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

Übersetzung:

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

Kann jemand Aufschluss darüber geben, wie wir diese Art von Anweisungen in Entity Framework einsetzen können, oder erklären, warum dieser Fehler auftritt?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage