2008-10-08 26 views
2

我已经在工作中创建了一个通用库,并且它已安装在我们的测试服务器上的GAC中。我最近更新了它,我希望我们的所有应用程序都能使用此更新。我创建了一个发布者策略程序集并将其安装在GAC中,但是当Web应用程序加载Leggett.Common 1.0.0.0时,它不会重定向到Leggett.Common 1.1.0.0。如何使发布者策略文件重定向程序集请求

我在网络驱动器上有常用程序集(实际上有5个,但让它保持简单),我在它旁边创建了发布者策略xml文件,然后使用al.exe创建发布者策略程序集相同的文件夹。之后,我将更新后的程序集放入GAC,然后将发布程序策略程序集放入GAC。

常见程序集为'Leggett.Common.dll',发布者策略文件为'1.1.Leggett.Common.policy',发布者策略程序集为'policy.1.1.Leggett.Common.dll'。

的XML为发布政策文件如下所示:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <runtime> 
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
      <dependentAssembly> 
       <assemblyIdentity name="Leggett.Common" 
            publicKeyToken="32cd8f1a53a4c744" 
            culture="neutral" /> 
       <bindingRedirect oldVersion="1.0.0.0" 
           newVersion="1.1.0.0"/> 
      </dependentAssembly> 
     </assemblyBinding> 
    </runtime> 
</configuration> 

我在做什么错?

澄清
因为开发商我测试这是我的本地开发机器上没有进入到测试服务器。

+0

你能为我们提供XML为出版商策略? – Kev 2008-10-08 22:40:14

+0

嗯,是的。我的意思做。 – 2008-10-08 22:45:02

回答

2

好的......在刺...

1 - 你试过用Assembly Binding Log Viewer (Fuslogvw.exe),看看组装约束力正在发生?

你可以找到它:

C:\ Program Files文件\微软的SDK \的Windows \ v6.0A \ BIN \ FUSLOGVW.exe(安装VS2008)。

2 - “我在网络驱动器上有通用程序集(实际上有5个,但让它保持简单)” - 两个程序集都驻留在网络驱动器上吗?

更新:好的...如果新程序集在网络驱动器上,可能有一些trust issues。您能否将新程序集部署到服务器上的本地驱动器,然后重新安装到GAC?

Update2:我知道..愚蠢的东西....你肯定有publicKeyToken和版本号是否正确?即新程序集的AssemblyVersion属性肯定是1.1.0.0,并且公钥标记是相同的(在GAC中)?

你试过去除文化属性吗?

Update3:您好Max ....您能粘贴您使用的确切的发布者策略文件吗?另外...请记住,如果您将1.0版本重定向到更高版本的程序集,则必须使用您重定向的程序集的major.minor版本来命名发布者策略名称。所以在你的情况下,发布者策略应该被命名为“policy.1.0.Leggett.Common.dll”。我注意到你已经命名为'policy.1.1.Leggett.Common.dll',这可能是它不起作用的原因。

最后,您必须确保您使用1.0和1.1程序集使用的相同密钥签署发布者策略。

我建了几个DLL的,并在GAC下降他们然后使用一个控制台应用程序在VS测试和它的工作:)

UPDATE4:嗨马克斯,这是我从来没有想过。在创建发布者策略文件时,您是否指定了该平台?尝试用构建它:

人/link:1.1.Leggett.Common.policy /out:policy.1.0.Leggett.Common.dll /密钥文件:/version:1.0.0.0

漏下/平台切换并明确指定版本号。

干杯
千电子伏

2

你正确识别组件,但对于其他人谁的阅读,在assemblyIdentity元素通过它的根引用大会未经文件扩展名(例如,“FUBAR”和不是“Fubar.dll”)。

微软documentation忽略提及...#$%#!(!@!

相关问题