.NET方法(.dll)和反映版本之间的性能差异

Bea*_*der 9 .net c# dll assemblies

我一直在尝试优化JavaScript编码功能(在C#中)以提高其性能(总体上是为了提高企业Web应用程序的性能).我们尝试使用.NET HttpUtility.JavaScriptStringEncode但它没有编码我们的数据层预期的方式(并且更改数据层不在表上).

使用RedGate分析器工具,我确定我们的功能的最佳性能约占总页面负载的8%.当我使用.NET函数(在接受它的页面上)时,它占总页面加载的大约.08%.我们反映了.NET函数,看看他们正在使用什么样的魔法,当我将反射的代码复制到函数中并直接运行时,它的执行率大约为10%.

我很好奇为什么.如何通过不同的方式准备.NET功能以奖励这样的性能提升?

我提前道歉,但我不能粘贴我们正在使用的功能,但我认为这不会影响回答问题.

gur*_*ath 1

您能否将将反射代码粘贴到库中后生成的 IL 代码与 .NET 库中存在的 IL 代码进行比较?用于编译的编译器开关可能会导致此类差异。