Recipe Framework error

Topics: CAB & Smart Client Software Factory
May 30, 2007 at 9:36 AM
I'm receiving the following error during the solution generation (May 2007 version).

System.TypeLoadException: Microsoft.Practices.RecipeFramework.Extensions.Actions.General.EvaluateExpressionAction, Microsoft.Practices.RecipeFramework.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 ---> System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Practices.RecipeFramework.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'Microsoft.Practices.RecipeFramework.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetAssembly(AssemblyName assemblyName, Boolean throwOnError)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value HKLM\Software\Microsoft\Fusion!EnableLog (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value HKLM\Software\Microsoft\Fusion!EnableLog.

--- End of inner exception stack trace ---
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)
at Microsoft.Practices.Common.Services.AliasResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError)
at Microsoft.Practices.RecipeFramework.Recipe.GetInstanceT(ITypeResolutionService resolution, String concreteType)
at Microsoft.Practices.RecipeFramework.Recipe.LoadActionsFromConfiguration(ITypeResolutionService resolution)
at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
at Microsoft.Practices.RecipeFramework.Recipe.Execute(Boolean allowSuspend)
at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(String recipe, IAssetReference reference, IDictionary arguments)
at Microsoft.Practices.RecipeFramework.GuidancePackage.ExecuteFromTemplate(String recipe, IDictionary arguments)
at Microsoft.Practices.RecipeFramework.VisualStudio.Templates.UnfoldTemplate.ExecuteRecipe(Boolean executeActions)
at Microsoft.Practices.RecipeFramework.VisualStudio.Templates.UnfoldTemplate.RunFinished()
May 30, 2007 at 2:23 PM
I had a similar problem - maybe this will help:
http://www.codeplex.com/smartclient/Thread/View.aspx?ThreadId=10749

Vlad
May 31, 2007 at 12:31 PM
I had a higher version into VS2005 directory.
I copied the version from SMCF (1.2.2644.18037) into VS2005 directory but I still have the same problem.
Which dll's do I need in that directoty ?

Any help wouild be apprechiated ?
Thanks


vladhorby wrote:
I had a similar problem - maybe this will help:
http://www.codeplex.com/smartclient/Thread/View.aspx?ThreadId=10749

Vlad

Jun 7, 2007 at 5:50 AM
I still have the problem.
Please help because I really want to use this factory.
Jun 22, 2007 at 3:56 PM
In the end I ran into the same problem as you did...
I deleted (renamed) Microsoft.Practices.RecipeFramework.Extensions.dll from the PublicAssemblies folder, and the solution creation went fine.
I'm not sure if it's not needed there by some other guidance package though...
Vlad