Próbuję zaimplementować wyszukiwanie przeciwko DB, który odziedziczyłem. Wymóg określa, że użytkownik musi mieć możliwość wyszukania obiektu według nazwy. Niestety obiekt może mieć wiele nazw skojarzonych z nim. Na przykład:Przebaczanie/Wyszukiwanie rozmyte z LINQ
ID Name 1 John and Jane Doe 2 Foo McFoo 3 Boo McBoo
to dość łatwe do wdrożenia przeszukiwanie gdy pojedyncza nazwa istnieje w każdym rekordzie:
var objects = from x in db.Foo
where x.Name.Contains("Foo McFoo")
select x;
Jednak, gdy istnieje wiele nazw, to podejście nie działa.
Pytanie: Czy jest możliwe aby napisać metodę wyszukiwania, które rekord jednego zwrotu (John i Jane Doe), gdy ktoś korzysta z haseł John Doe
lub Jane Doe
?
można zrobić String.split na białej przestrzeni, aby przerwać łańcuch szukania siebie i następnie po prostu uruchom wiele zapytań za pomocą.Zawiera i zwraca wszystkie wyniki? –
Co, jeśli jest "John Smith"? Czy podzielisz go i szukasz każdej części nazwy? Co sprawia, że imię i nazwisko? Osiągam to, że w obecnej formie nazwa nie ma żadnej struktury. – hometoast