.Net UseLegacyv2RuntimeActivation策略在IIS 7.5中不起作用

.Net UseLegacyv2RuntimeActivation策略在IIS 7.5中不起作用,.net,web-config,iis-7.5,.net,Web Config,Iis 7.5,我有一个.NET4.0应用程序,它引用了第三方DLL,而第三方DLL显然不支持4.0。在配置文件中使用useLegacyV2RuntimeActivationPolicy=“true”可使其在本地运行时工作,但在IIS 7.5中的服务器上运行时不工作 第三方软件来自,DLL: CrystalDecisions.CrystalReports.Engine CrystalDecisions.ReportSource 水晶决定。共享 本地计算机和web服务器都安装了相同的Crystal Repor

我有一个.NET4.0应用程序,它引用了第三方DLL,而第三方DLL显然不支持4.0。在配置文件中使用useLegacyV2RuntimeActivationPolicy=“true”可使其在本地运行时工作,但在IIS 7.5中的服务器上运行时不工作

第三方软件来自,DLL:

  • CrystalDecisions.CrystalReports.Engine
  • CrystalDecisions.ReportSource
  • 水晶决定。共享
本地计算机和web服务器都安装了相同的Crystal Reports运行时CRRuntime_32bit_13_0_5.msi

我的本地应用程序正在使用一个测试项目运行,该项目是一个Windows窗体应用程序。在app.config中,当包含以下内容时,它会起作用:

<configuration>
  ...
  <startup useLegacyV2RuntimeActivationPolicy="true" >
  </startup>
</configuration>

...
未包含时,本地代码会导致此异常:

“不能加载文件或程序集C:\SaleObjs\CalthObjs.NETFramework 4 \公共\SAP业务对象企业席4 \ Wi32×x86 \ dotNET1\CRBDAADOPLUS .DLL”或其一个依赖关系。系统找不到指定的文件。 当我为网站的web.config添加相同的标记时,它是否存在似乎没有任何区别。当那行代码被命中时,代码就消失了;它不会抛出任何托管异常

谷歌寻求帮助,所有页面基本上都声明添加配置设置可以解决问题,通常会引用以下内容或一个轻微的变体:

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>


但这对我的申请不起作用。由于我无法从web应用程序中获得实际错误,我不知道下一步该怎么办,非常感谢您的帮助。

既然还没有人回答,我就扔5美分

useLegacyV2RuntimeActivationPolicy允许包含.NET 2.0之前的“古怪”(通常涉及混合程序集)。但这样做是以牺牲并行执行为代价的

我想你没有找到正确的入口。不要将Web.Config与App.Config文件混淆。Config还有另一个完全不同的用途。我假设您需要找到可执行文件的App.Config文件


(我不知道IIS是否会对这个设置做出积极的响应。)

既然还没有人回答,我就扔5美分

useLegacyV2RuntimeActivationPolicy允许包含.NET 2.0之前的“古怪”(通常涉及混合程序集)。但这样做是以牺牲并行执行为代价的

我想你没有找到正确的入口。不要将Web.Config与App.Config文件混淆。Config还有另一个完全不同的用途。我假设您需要找到可执行文件的App.Config文件


(我不知道IIS是否会对此设置做出积极响应。)

我现在认为这是关键,这是应用程序配置,而不是web.config;等待标记为答案,直到我们真正开始工作。我认为它实际上可能是aspnet.config文件…或者IIS可执行文件的app.config。仔细想想,您可能会使用以下内容找到正确的配置文件:AppDomain.CurrentDomain.SetupInformation.configurationfile我现在认为这是关键,它是app config而不是web.config;等待标记为答案,直到我们真正开始工作。我认为它实际上可能是aspnet.config文件…或者IIS可执行文件的app.config。仔细想想,您可以使用以下内容找到正确的配置文件:AppDomain.CurrentDomain.SetupInformation.ConfigurationFile