0

我想分析我使用 NHibernate Profiler 从 LINQPad 运行的 NHibernate 查询。

当我尝试使用此初始化分析器时:

NHibernateProfiler.Initialize();

我收到以下错误:

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

这很奇怪,因为在没有初始化分析器的情况下,我在 LINQPad 中的 NHibernate 代码按预期执行(因此肯定会找到所需的 NHibernate DLL)。

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.dll
  • log4net.dll
  • 我的应用程序.dll

额外的命名空间导入:

  • 休眠Rhinos.Profiler.Appender.NHibernate

堆栈跟踪以获取更多信息:

   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()
4

1 回答 1

1

HibernatingRhinos 正在生成代码,然后尝试编译并失败。

如果您可以追踪由 创建的文件HibernatingRhinos.Profiler.Appender.Util.GenerateAssembly.Compile,您应该会更好地了解它为什么会出错。

于 2012-03-04T01:25:46.100 回答