dalcam
dalcam

Reputation: 1077

Upgrading Virtocommerce from 2.9 to 2.10 - CacheManager Issue

I recently performed the following steps on my VirtoCommerce Site:

Updated my Local Environment from 2.9 to 2.10 via Git. Publish to Azure the Manager App. (Overwriting 2.9 on Azure) Publish to Azure the Storefront. (Overwriting 2.9 on Azure)

I got a Typeload error that LibSass_64 couldnt be loaded. Realised my Dev Machine is x64 but the Azure server is x86, so I changed the Build configs in both solutions to x86 and republished with the "remove existing files" setting to clear the x64 dlls.

That solved the typeload error. However now I am getting the following error I am unable to resolve without help. Any help will be greatly appreciated!


Error calling StoreModuleGetStores:

Could not load type 'CacheManager.Core.RuntimeCachingBuilderExtensions' from assembly 'CacheManager.SystemRuntimeCaching, Version=0.7.1.0, Culture=neutral, PublicKeyToken=null'

Exception has been thrown by the target of an invocation.] System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0

System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj,Object[] parameters, Object[] arguments) +92
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +101
Owin.Loader.<>c__DisplayClass12.<MakeDelegate>b__b(IAppBuilder builder) +66
Owin.Loader.<>c__DisplayClass1.<LoadImplementation>b__0(IAppBuilder builder) +123
Microsoft.Owin.Host.SystemWeb.<>c__DisplayClass2.<InitializeBlueprint>b__0(IAppBuilder builder) +71
Microsoft.Owin.Host.SystemWeb.OwinAppContext.Initialize(Action`1 startup) +462
Microsoft.Owin.Host.SystemWeb.OwinBuilder.Build(Action`1 startup) +40
Microsoft.Owin.Host.SystemWeb.OwinHttpModule.InitializeBlueprint() +70
System.Threading.LazyInitializer.EnsureInitializedCore(T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory) +115
Microsoft.Owin.Host.SystemWeb.OwinHttpModule.Init(HttpApplication context) +106
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +534
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +352
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296

Upvotes: 1

Views: 153

Answers (1)

Dartal
Dartal

Reputation: 432

You should not change the build platform. Everything should be compiled for "Any CPU" platform.

The original issue with LibSass_64 has happened because the publishing process has copied LibSass.x64.dll and libsassnet.dll to the bin directory. These assemblies should be deleted from bin and there is a special action in the storefront project to do this. Unfortunately the publishing process either doesn't run this action or copies libsass assemblies to the bin anyway. Need to sort this out.

At the same time the bin directory should contain the LibSassNetProxy.dll, which will load the correct version of libsass assemblies from App_Data directory depending on the platform at runtime.

Upvotes: 0

Related Questions