|
И снова про Mongo - как работать через драйвер С# через текстовые строки типа консоли?
|
|||
---|---|---|---|
#18+
Доброе время суток. Есть задача - программа на С# должна получать на вход извне запросы в виде текста наподобие консольных запросов Mongo, выполнять их и дальше что-то там делать. Структура запросов заранее не известна, поэтому использование объектной модели из примеров не применимо, по крайней мере в чистом виде. Как это сделать? Нашел пример, но он старый http://stackoverflow.com/questions/6120629/can-i-do-a-text-query-with-the-mongodb-c-sharp-driver и с современным драйвером даже не компилируется. Из примера получился такой код: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
Компилируется, выполняется, доходит до return cursor.ToList(); и висит, через 30 секунд отваливается по таймауту. В коллекции 33 документа, из консоли все работает. Что я делаю не так? Версия драйвера MongoDB.Driver.dll 2.2.3.3 Отвлеченно - почему MongoCollection и IMongoCollection вообще никак не связаны друг с другом? Хотя оба используются для работы с коллекциями, но один имеет метод FindAs, а другой - нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:59 |
|
И снова про Mongo - как работать через драйвер С# через текстовые строки типа консоли?
|
|||
---|---|---|---|
#18+
Возможно, переформулирую вопрос - как еще можно работать из .net, кроме как через объектную модель драйвера? 1) Подключать родные библиотеки на с++ и их импортировать. Самый муторный вариант получить 5 метров колючей проволоки из ежа и ужа 2) Продолжать ковыряться в драйвере или, как вариант, найти драйвер, под которым собран пример и поста выше. Возможно, свежий драйвер забагован именно в этом месте 3) Другие варианты? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2016, 08:40 |
|
И снова про Mongo - как работать через драйвер С# через текстовые строки типа консоли?
|
|||
---|---|---|---|
#18+
Итак, тот самый другой вариант. Как уже ранее подтверждалось практикой самое свежее не значит самое лучшее. Ставим MongoDB 3.0 и в паре с драйвером 1.10 работает такой код: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2016, 14:20 |
|
|
start [/forum/topic.php?fid=48&fpage=7&tid=1856750]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
35ms |
get tp. blocked users: |
2ms |
others: | 10ms |
total: | 122ms |
0 / 0 |