Sto tentando di implementare una ricerca su un DB che ho ereditato. Il requisito stabilisce che l'utente deve essere in grado di cercare un oggetto per nome. Sfortunatamente, a un oggetto potrebbero essere associati più nomi. Per esempio:Perdita/ricerca fuzzy con LINQ
ID Name 1 John and Jane Doe 2 Foo McFoo 3 Boo McBoo
E 'abbastanza facile da implementare una ricerca quando esiste un solo nome in ogni record:
var objects = from x in db.Foo
where x.Name.Contains("Foo McFoo")
select x;
Tuttavia, quando esistono più nomi, questo approccio non funziona.
Domanda: E 'possibile scrivere un metodo di ricerca che sarebbe tornato un record (John e Jane Doe) quando qualcuno usa i termini di ricerca o John Doe
Jane Doe
?
si potrebbe fare uno string.split su uno spazio bianco per rompere la stringa di ricerca a parte e quindi esegui più query con.Contiene e restituisce tutti i risultati? –
Cosa succede se c'è un "John Smith"? Lo dividi e cerchi ogni parte del nome? Cosa rende un nome e un cognome? Quello che sto ottenendo è che nella sua forma attuale il nome non ha struttura. – hometoast