Настройте LINQPad для работы с NHibernate Profiler - PullRequest
0 голосов
/ 03 марта 2012

Я хотел бы профилировать свои запросы NHibernate, которые я запускаю из LINQPad, используя NHibernate Profiler.

Когда я пытаюсь инициализировать профилировщик, используя это:

NHibernateProfiler.Initialize();

Я получаю следующую ошибку:

The type or namespace name 'NHibernate' does not exist in the namespace 'HibernatingRhinos.Profiler.Appender' (are you missing an assembly reference?)

Это странно, потому что без инициализации профилировщика мой код NHibernate в LINQPad выполняется должным образом (поэтому определенно находит требуемый NHibernateDLLs).

LINQPad настроен следующим образом:

Дополнительные ссылки:

  • NHibernate.dll (3.2.0.4000)
  • HibernatingRhinos.Profiler.Appender.v4.0.dll (1.0.0.920)
  • ConformOrm.dll (2.0.0.0)
  • ConformOrm.Shop.dll (2.0.0.0)
  • IesiCollections

Трассировка стека для дополнительной информации:

   at HibernatingRhinos.Profiler.Appender.Util.GenerateAssembly.Compile(String fileName, String[] sources, IEnumerable`1 assembliesToReference)
   at HibernatingRhinos.Profiler.Appender.Util.GenerateAssembly.CompileAssembly(IEnumerable`1 sourcesResources, IEnumerable`1 assembliesToReference, String assemblyName)
   at HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.RegisterAppenderUsingNHibernateLogger()
   at HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.WrapLogger()
   at HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.StartNHibernateProfiling()
   at HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.Initialize(NHibernateAppenderConfiguration configuration)
   at HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.Initialize()

1 Ответ

1 голос
/ 04 марта 2012

HibernatingRhinos генерирует код, который затем пытается скомпилировать и завершиться с ошибкой.

Если вы можете отследить файл, созданный HibernatingRhinos.Profiler.Appender.Util.GenerateAssembly.Compile, вы должны лучше понять, почему он идет не так.

...