Я получаю следующую ошибку, но я не уверен, как переписать мое заявление? Любые идеи?Entity Framework - ошибка преобразования строки
Ошибка:
LINQ to Entities does not recognize the method 'System.String Convert(System.String)' method, and this method cannot be translated into a store expression
Код:
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();
}
Ошибка означает, что Linq необходимо преобразовать ваше выражение в оператор Sql. Ваш собственный метод 'Convert' не является переводимым, потому что это код C#, а не тот, который также существует на сервере базы данных. – Igor
Привет, спасибо, но я уже сказал вопрос, я спросил, но я не уверен, как переписать мое заявление? –
номер телефона находится в строке –