如何解决Excel 插件 (C#/ExcelDna) 中的性能缓慢
我们有一个用 C# 开发并与 ExcelDna 集成的 Excel 插件。 多年来,它运行良好。 但是现在对于一个客户来说,它的运行速度很慢。 我添加了一些日志记录,但无法找出代码中任何显着的缓慢部分。 似乎一般来说,每段代码都慢了一点,对于运行时间较长的任务,总的时间损失是很大的。
Addin 在它自己的 AppDomain 中运行,并且由于一些 Nuget 依赖项,我们使用了在 AppDomain 使用的 Addin 配置文件中指定的 AssemblyRedirects。
现在有趣/奇怪的发现: 我的同事将这些重定向添加到 Excel.exe.config 中,瞧:它运行得很快。
这到底是怎么回事? 嗯,它有点解决了问题,但我们当然不想操作 Excel 的配置文件。
我们发现,如果 Excel.exe.config 中只存在这两个重定向中的一个,则插件运行得很快:
<dependentAssembly>
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0"/>
</dependentAssembly>
对此的任何帮助表示赞赏。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。