Ich bekomme den folgenden Fehler, aber ich bin nicht sicher, wie ich meine Aussage umschreiben? Irgendwelche Ideen?Entity Framework - Zeichenfolge Konvertierung Fehler
Fehler:
LINQ to Entities does not recognize the method 'System.String Convert(System.String)' method, and this method cannot be translated into a store expression
Code:
public Client FindClientByMobile(string mobile, string accountId)
{
Client client = RepositorySet.Include("Account").FirstOrDefault(c => c.AccountId == accountId && !c.IsDeleted
&& ((Convert(c.TelephoneHome) == mobile) || (Convert(c.TelephoneMobile) == mobile) || (Convert(c.TelephoneWork) == mobile)));
return client;
}
public static string Convert(string mobile)
{
var filterNumber = from letter in mobile
where char.IsDigit(letter)
select letter;
StringBuilder number = new StringBuilder();
number.Append(filterNumber.ToArray());
return number.ToString();
}
Der Fehler bedeutet, dass Linq Ihren Ausdruck in eine Sql-Anweisung übersetzen muss. Ihre benutzerdefinierte 'Convert'-Methode ist nicht übersetzbar, da es sich um C# -Code handelt und nicht um etwas, das auch auf dem Datenbankserver existiert. – Igor
Hallo, danke, aber ich habe das Problem bereits erwähnt, ich fragte, aber ich bin nicht sicher, wie ich meine Aussage umschreiben soll? –
Telefonnummer ist in einer Zeichenfolge –