我正在尝试在 .NET Core 3.1 MVC 应用程序中使用 NHibernate Profiler,尽管我已经尝试安装探查器坚持认为它需要的工作(通过 nuget),但我仍然无法让 NHibernate Profiler 与 .NET Core 3.1 一起使用.
我首先添加HibernatingRhinos.Profiler.Appender
对项目的引用,并尝试从 Program.Main 调用 NHibernateProfile.Initialize() ,如下所示:
public class Program
{
public static void Main(string[] args)
{
HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.Initialize();
CreateHostBuilder(args).Build().Run();
}
...
}
以及 Startup 的构造函数
public Startup(IConfiguration configuration)
{
HibernatingRhinos.Profiler.Appender.NHibernate.NHibernateProfiler.Initialize();
}
我收到的第一个例外是:
System.IO.FileNotFoundException: Could not load file or assembly 'System.Configuration.ConfigurationManager, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. The system cannot find the file specified.
我通过 nuget 添加了该引用。
我收到的下一个例外是:
System.IO.FileNotFoundException: Could not load file or assembly 'System.CodeDom, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. The system cannot find the file specified.
我通过 nuget 添加了引用。
我收到的最后一个例外是非常模糊的:
System.PlatformNotSupportedException: Operation is not supported on this platform.
NHibernate Profiler 声称它适用于 .NET Core 5.0 版(我正在运行 build 5044):http: //hibernatingrhinos.com/products/NHProf
但我无法让它工作。
我没有尝试在不必更改应用程序代码的模式下运行它,但是当我可以更改我的应用程序代码(以及文档建议您无论如何使用 .Initialize() 调用)
我确定我做错了什么和/或遗漏了一些东西。任何帮助,将不胜感激