DGKumar Ответов: 1

Как получить данные с помощью wildcard search for mobilenumber which bigint/int number in C#?


I want to search data based on number whihc is contains search numbers in linq or lamdaexperssion

data is below

Id Name ContactNumber

1  A    9043484888
2  B    8938938983


select * from contactDetails where number like '%484%'


Что я уже пробовал:

select * from contactDetails where number like '%484%'
Search value 484

var result = details.Where(e=>e.ContactNumber.ToString().Contains(searchvalue)).ToList

F-ES Sitecore

Не храните телефонные номера как типы номеров, они не являются номерами. Хранение в виде числа даст вам много различных проблем в будущем, очень важно, чтобы вы использовали соответствующие типы. Измените это поле на varchar или nvarchar, если это необходимо.

1 Ответов

Рейтинг:
1

OriginalGriff

Всегда храните телефонные номера в строковых типах данных: они не являются числами, потому что вы не можете сделать с ними никаких математических вычислений: каков ваш номер телефона плюс мой номер телефона? Что бы это могло быть?

Кроме того, телефонные номера-это не просто цифры: +44 (0777) 777 7777 это допустимый формат телефонного номера - +44 означает, что это британский номер, (0777) - код города в Великобритании, а пробелы облегчают его чтение для людей. Вы не можете хранить все это в числовом значении!

Когда вы храните их в виде строк, вы можете использовать LIKE на них, но не с числами.