Dim PretragaString As String = RadTextBoxPretraga.Text
Dim query = From nal In RadFormMain.db.Nalozi
Where
nal.ImeKlijenta.Contains(PretragaString)
Select
...
Međutim, ne baš inteligentni korisnici upisuju imena nekad sa našim slovima a nekad bez pa to otežava pretragu, tačnije mora dva puta da se traži. Sad sam probao (i uspeo) da napravim da pretraga radi na oba načina, samo me zanima jel ima neka bolja varijanta, malo mi ovo deluje glupo:
Dim PretragaString As New List(Of String)
PretragaString.Add(RadTextBoxPretraga.Text)
If RadTextBoxPretraga.Text.IndexOf("ć") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("ć", "c"))
If RadTextBoxPretraga.Text.IndexOf("c") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("c", "ć"))
If RadTextBoxPretraga.Text.IndexOf("š") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("š", "s"))
If RadTextBoxPretraga.Text.IndexOf("s") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("s", "š"))
If RadTextBoxPretraga.Text.IndexOf("č") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("č", "c"))
If RadTextBoxPretraga.Text.IndexOf("c") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("c", "č"))
If RadTextBoxPretraga.Text.IndexOf("ž") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("ž", "z"))
If RadTextBoxPretraga.Text.IndexOf("z") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("z", "ž"))
If RadTextBoxPretraga.Text.IndexOf("đ") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("đ", "dj"))
If RadTextBoxPretraga.Text.IndexOf("dj") <> -1 Then PretragaString.Add(RadTextBoxPretraga.Text.Replace("dj", "đ"))
Dim query = From nal In RadFormMain.db.Nalozi
Where
PretragaString.Any(Function(x) nal.ImeKlijenta.Contains(x))
Select
...