Although the latest version of SCSF uses EntLib 3.1 , but there is an issue which I faced and traced to resolution.
I created a project in SCSF and tried to open configuration file[Shell.exe.config] from compiled binary folder using the EntLibConfig.exe found in C:\Program Files\Microsoft Enterprise Library 3.1 - May 2007\Bin folder.
To my surprise I kept on getting error related to 'Could not load file or Assembly 'Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.dll' ..etc...etc.... .
I tried many other options like copying this tool to Application binaries folder, Copying Application binaries to EntLib binaries folder etc. But I couldn't succeed.
Then after some Googling I found the solution.
The problem relates to Precompiled binaries of Enterprise Library 3.1, Which are Strong named by default [while compiled by MS guys].
While SCSF by default uses Non-Strong named enterprise library binaries.
So here is the issue of a Mismatch.
I compiled the Enterprise library source code to produce Non-Strong named assemblies, which got compiled to 'C:\EntLib3Src\App Blocks\bin' folder. Then by using EntLibConfig.exe from C:\EntLib3Src\App Blocks\bin folder, everything starts working.
Thanx to the Toms' blog which helped me to get to the solution.
ENJOY
P.S: You can install the source code for EL from
Start-->All Programs--> Microsoft Patterns and Practices -->Enterprise Library 3.1-May 2007 --> Enterprise Library Source Code Installer

No comments:
Post a Comment