|
реализация поиска
|
|||
---|---|---|---|
#18+
Всем привет, Вопрос по реализации поиска. C#, Nhibrnate 3.0, mssql2008. Есть база представляющая каталоги (иерархически) и файлы в них. Файлы и папки принадлежат какому-то юсеру. Таблицы в базе User, Directory, File, смаплено на объект User c коллекцией объектов directory, в каждой directory коллекция покаталогов и коллекция файлов. Нужен поиск по файлам (по имени, по нескольким введенным символам). Если бы это был чистый ADO, я бы написал процедуру, внутри временную таблицу с иерархтией, индекс по имени и like запрос. Как это сделать на Nhibernate? Ходить по рекурсивно по коллекциям выглядит уныло. Каталогов может быть много, плюс еще другие юсеры имеют права на эти каталоги (через еще одну таблицу). ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2014, 15:33 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
gri4, На NHibernate никак. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2014, 15:40 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
Ок как тогда выкручиваться? ADO.NET, потом мапить вручную на DTO объекты? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2014, 16:02 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
gri4Ок как тогда выкручиваться? ADO.NET, потом мапить вручную на DTO объекты? Можно взять любой готовый маппер. Я бы рекомендовал linq2db, он еще и FullTextSearch умеет маппить. смапленные объекты можно прицепить к сессии NHibernate ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2014, 16:04 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
gri4Ок как тогда выкручиваться? Возьми люцену, она поможет. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2014, 16:36 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
gri4, работай как с объектами, два ленивых запроса ( я думаю лениво настроено), че ее жадеть базу то, пускай отвечает ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2014, 18:08 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
gandjustasМожно взять любой готовый маппер. Я бы рекомендовал linq2db, он еще и FullTextSearch умеет маппить. смапленные объекты можно прицепить к сессии NHibernate Спс, подумаю. Т.е. linq(ом) буду вызывать процедуру, получу коллекцию файлов, перемаплю на на объекты модели или сразу на DTO, так? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2014, 16:26 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
МСУ, Посмотрел люцену, какой-то туториал. Это получается реализация полнотекстогово поиска на уровне приложения. Я так понимаю - плюс в том что я могу сразу работать с объектами модели? А как будет поиск вызываться? Сейчас у меня нет полной коллекции всех файлов. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2014, 16:29 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
Где-то в степи, уточни плс, нужно создать полную плоскую коллекцию объектов, потом в ней искать? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2014, 16:31 |
|
реализация поиска
|
|||
---|---|---|---|
#18+
gri4МСУ, Посмотрел люцену, какой-то туториал. Это получается реализация полнотекстогово поиска на уровне приложения. Я так понимаю - плюс в том что я могу сразу работать с объектами модели? А как будет поиск вызываться? Сейчас у меня нет полной коллекции всех файлов. Есть два участника, процессинг (фоновый режим) и клиент. Процессинг (то есть построение индекса) будет в стороннем сервисе (вин сервис, шедулер и т.п.). Посмотри вот эти рецепты http://codearticles.ru/articles/961 http://codearticles.ru/articles/960 Тот сайт как-раз на люцене работает. Поиск тут http://codearticles.ru/search ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2014, 16:45 |
|
|
start [/forum/topic.php?fid=17&msg=38701263&tid=1349742]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
152ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 246ms |
total: | 474ms |
0 / 0 |