Resolve conflicts with Transient Fault Handling FX and Caching Preview?
-
2012年7月24日 下午 04:25
I'm using all NuGet packages for things and I have noticed that there are reference problems in my app:
This assembly (from the transient fault part of EntLib):
Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling, Version=5.0.1118.0,...
References this assembly (an AppFabric Server assembly):
Microsoft.ApplicationServer.Caching.Core, Version=101.0.0.0...
This screws up the inclusion of this assembly (from Caching Preview):
Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0...
Not sure why the Transient FaultHandling framework needs to access AppFabric Server Caching assemblies, but it seems like we might be missing an abstraction in there..Anyone have a solution to this?
所有回覆
-
2012年7月25日 上午 10:34版主
Hi,
According to your description, It seems that the AppFabric Server assembly and Windows Azuare Caching (Preview) service assembly has version conflict, if you only create Azure application for youself, try to use Caching Preview assembly and see if there's any exception.
BR,
Arwind
Please mark the replies as answers if they help or unmark if not. If you have any feedback about my replies, please contact msdnmg@microsoft.com Microsoft One Code Framework
- 已標示為解答 Arwind - MSFTModerator 2012年7月30日 上午 09:03
-
2012年8月19日 下午 02:24
I am facing the issue. Yes there is conflict between two. Cache preview needs to user Core assemble of version 1.0.4655.0 while "Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling" has dependency on Core assembly version 1.0.4621.0.
So every time TransientFaultHandling overwrites the Core with older version.
@Tom : Did you get the solution for this problem?
-Vikas
-
2012年8月23日 下午 11:40
I'm also facing this issue. I have both the Transient Fault Handling Application Block for Windows Azure and the Windows Azure Caching Preview installed using NuGet. I have the conflict warning occuring and when you click to create binding redirects in VS, it does not do anything.
I've manually added binding redirects in my web.config. However this does not remove the warning. Even with the binding redirects, the web application will occasionally fail with "Could not load file or assembly 'Microsoft.ApplicationServer.Caching.Core' or one of its dependencies." because I've specified to use 1.0.0.0 and it sometimes gets overwritten in the /bin with the 101.0.0.0 version and thus cannot find 1.0.0.0.
Anyone have a solution? I don't want to manually add references. I'd like to keep NuGet rollin' to keep my assemblies updated.
<dependentAssembly> <assemblyIdentity name="Microsoft.ApplicationServer.Caching.Core" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" /> <bindingRedirect oldVersion="101.0.0.0" newVersion="1.0.0.0" /> </dependentAssembly>
William Christenson
-
2012年9月10日 下午 01:11
My point is that this is NOT possible.
Since the assemblies have the same exact name and the AppFabric Cache one is referenced by the Transient Fault Handling FX, it causes conflicts if you try to use them both.
I'm saying that the dependency from the CORE of this FX should NOT be referencing a specific CACHING implementation. I'm not using it for caching, thus I should not be incurring additional references to unused features. There needs to be an abstraction inserted in here to prevent this unnecessary dependency.

