Upgrade NCache without Disturbing Deployed Environment
When a newer version of NCache is installed, your code need no longer be recompiled with the most recent version. Now, with each installation of NCache, a publisher policy file is installed. This file redirects all the previous versions of the specified assembly to the newer version. Policy assembly files for various NCache assemblies are as follows:
NCache Assembly
|
Publisher Policy Assembly
|
Alachisoft.NCache.Web.dll
|
policy.<version>.Alachisoft.NCache.Web.dll
|
Alachisoft.NCache.Runtime.dll
|
policy.<version>.Alachisoft.NCache.Runtime.dll
|
Alachisoft.NCache.Cache.dll
|
policy.<version>.Alachisoft.NCache.Cache.dll
|
Here <version> is the newer version of NCache. For example, for NCache 4.4.0.0, publisher policy file for Alachisoft.NCache.Web.dll will be Policy.4.4.0.0.Alachisoft.NCache.Web.dll. These policy assembly files are added to the GAC with all other assemblies and are removed at uninstall.
You can also bypass the publisher policy file by specifying 'publisherpolicy' tag in the "App.config" file.
For Enterprise and Professional Editions:-
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Alachisoft.NCache.Web" publicKeyToken="cff5926ed6a53769" culture="neutral"/>
<publisherpolicy apply="no"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Alachisoft.NCache.Runtime" publicKeyToken="cff5926ed6a53769" culture="neutral"/>
<publisherpolicy apply="no"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Alachisoft.NCache.Cache" publicKeyToken="cff5926ed6a53769" culture="neutral"/>
<publisherpolicy apply="no"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
For Open Source Edition:-
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Alachisoft.NCache.Web" publicKeyToken="1448e8d1123e9096" culture="neutral"/>
<publisherpolicy apply="no"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Alachisoft.NCache.Runtime" publicKeyToken="1448e8d1123e9096" culture="neutral"/>
<publisherpolicy apply="no"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Alachisoft.NCache.Cache" publicKeyToken="1448e8d1123e9096" culture="neutral"/>
<publisherpolicy apply="no"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
See Also