NHibernate очень медленно во время отладки - PullRequest
3 голосов
/ 18 мая 2010

Кто-нибудь сталкивался с проблемой, когда NHibernate очень медленно работает в Visual Studio во время отладки, но ведет себя нормально при запуске отдельно? Ведение журнала отключено, и время, по-видимому, теряется при выполнении реальных запросов. NHProfiler показывает, что запросы выполнялись очень быстро (я полагаю, на стороне SQL), но каждый сеанс с 10 запросами занимает около 4 секунд. Я использую SQL Express Server. Как я уже сказал, даже если я включу полную регистрацию и запусту свое приложение без Visual Studio, это будет на порядок быстрее.

Обновление. После нескольких часов работы над этой проблемой я смог ее исправить, просто переключив тип проекта с приложения Windows на консольное приложение (хотя на самом деле это служба Windows, но она всегда работала до с типом проекта приложения Windows). Какая может быть разница, чтобы остановить NHibernate в режиме отладки?

1 Ответ

3 голосов
/ 04 августа 2011

У меня была такая же проблема с моим приложением WinForms. Я попробовал ваше предложение изменить его на консольное приложение, и оно сработало! к сожалению, окно консоли было неприемлемым.

Я тогда нашел виновника, я думаю. ShowSql () (или show_sql = true). Отключение этого параметра сделало приложение таким же быстрым, как и при запуске извне Visual Studio. Я предполагаю, что это потому, что при запуске из VS он перенаправляет вывод консоли в окно вывода, и все это требует времени. При запуске вне Visual Studio отсутствует консольный вывод для записи, поэтому он быстрее.

Надеюсь, что это работает для вас также

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...