我有一个版本1.0.0.0的程序集和一个2.0.0.0的新版本。两者都安装在我的GAC中。
目前,我可以使用“.NET Framework 2.0配置”工具中的“已配置的程序集”部分来强制将1.0的任何请求发送到我的服务器上的2.0程序集。这仍然与4.0框架相同,但我需要安装teh .Net 2.0 SP1来获得2.0配置工具。我相信你也可以用“Publisher Policies”做到这一点,但这些似乎有点麻烦,因为你必须创建一个serparate程序集来执行重定向。
对.Net 4.0中的安全模型进行的其他更改以及默认情况下尚未安装“.NET Framework 2.0配置”工具的事实,以及自2.0以来我想知道的更新; 是否还有其他更优选的方法来强制执行.Net程序集的某些请求版本的服务器范围重定向?
答案 0 :(得分:1)
Jay你可以在app配置文件(web.config或app.config)或者机器配置中做你需要的。我个人不会安装.NET 2.0 SP1 来获取该配置工具。
这里有一个例子:Redirecting Assembly Versions
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="myAssembly"
publicKeyToken="32ab4ba45e0a69a1"
culture="en-us" />
<!-- Assembly versions can be redirected in application,
publisher policy, or machine configuration files. -->
<bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="mySecondAssembly"
publicKeyToken="32ab4ba45e0a69a1"
culture="en-us" />
<!-- Publisher policy can be set only in the application
configuration file. -->
<publisherPolicy apply="no" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>