NHibernate Profiler не работает в .NET Core 3.1

Я пытаюсь использовать NHibernate Profiler в приложении.NET Core 3.1 MVC, и хотя я попытался установить то, что профилировщик настаивает, чтобы это было его работой (через nuget), я все еще не могу заставить NHibernate Profiler работать с.NET Core 3.1.

Я начал с добавления ссылки на HibernatingRhinos.Profiler.Appender в проект и попытались вызвать NHibernateProfile.Initialize() из Program.Main следующим образом:

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 (я использую сборку 5044) здесь: http://hibernatingrhinos.com/products/NHProf

но я не могу заставить его работать.

Я не пробовал запускать его в режиме, в котором вам не нужно менять код приложения, но я не понимаю, в чем смысл прохождения всей чуши log4net, когда я МОГУ изменить код своего приложения (и документы предлагаю вам в любом случае использовать вызов.Initialize())

Я уверен, что что-то делаю неправильно и / или что-то упускаю. Любая помощь будет оценена

1 ответ

Так что я был прав, что-то делал неправильно.

Я по глупости копировал HibernatingRhinos.Profiler.Appender.dll в основной проект.net вместо того, чтобы использовать nuget для получения пакета NHibernateProfiler и вытаскивать для меня другие необходимые зависимости и конкретные версии!

Я взял этот пакет / версию через nuget:

и все работает.

Другие вопросы по тегам