.NET性能问题-visual studio宿主进程

.NET性能问题-visual studio宿主进程,.net,wpf,nhibernate,visual-studio-2010,.net,Wpf,Nhibernate,Visual Studio 2010,我有一个.NET4.0客户端配置文件,即WPF+NHibernate3业务线风格的应用程序,我几乎完全开发了它。后端数据库是通过NHibernate contrib JetDriver访问的Microsoft Access文件 在VisualStudio2010中通过调试器运行应用程序时,应用程序的性能是可以接受的。但是,如果我运行Debug或Release.exe文件,或者从ClickOnce部署运行,则整个应用程序的性能会非常缓慢 在谷歌上搜索后,我发现禁用“VisualStudioHost

我有一个.NET4.0客户端配置文件,即WPF+NHibernate3业务线风格的应用程序,我几乎完全开发了它。后端数据库是通过NHibernate contrib JetDriver访问的Microsoft Access文件

在VisualStudio2010中通过调试器运行应用程序时,应用程序的性能是可以接受的。但是,如果我运行Debug或Release.exe文件,或者从ClickOnce部署运行,则整个应用程序的性能会非常缓慢

在谷歌上搜索后,我发现禁用“VisualStudioHosting进程”选项将使我的调试体验类似于直接运行.exe文件,它确实做到了这一点

我想知道的是,为什么相对于正常调试模式,我的速度会如此缓慢?以及如何在运行时改进问题

编译设置如下所示:


关于,NHibernate性能问题通常可归因于log4net配置。如果您使用的是log4net,并且级别设置为DEBUG,那么NHibernate将执行大量日志记录。这也可能是VS调试器中的性能是可接受的,而不是部署的原因。log4net可能没有对部署环境中的文件夹的写入权限,因此无法打开日志文件。请参阅此链接:


PS-我很难将业务线应用程序与访问后端进行协调。

“PS-我很难将业务线应用程序与访问后端进行协调。”哈哈,我知道!这个应用程序更像是一个概念证明。在NHibernate3.0(CR1)中,现在没有对log4net的引用。我还将配置元素“show_sql”设置为false。我是否必须显式禁用其他一些内部日志记录