我最近在我的VirtoCommerce网站上执行了以下步骤:
通过Git将我的本地环境从2.9更新到2.10。 将Manager发布到Azure。 (覆盖Azure上的2.9) 将Storefront发布到Azure。 (覆盖Azure上的2.9)
我收到了一个无法加载LibSass_64的Typeload错误。实现我的Dev Machine是x64但Azure服务器是x86,因此我将两个解决方案中的Build configs更改为x86,并使用“删除现有文件”设置重新发布以清除x64 dll。
解决了类型加载错误。但是现在我收到以下错误,我无法在没有帮助的情况下解决。任何帮助将不胜感激!
调用StoreModuleGetStores时出错:
无法从程序集'CacheManager.SystemRuntimeCaching,Version = 0.7.1.0,Culture = neutral,PublicKeyToken = null'
加载类型'CacheManager.Core.RuntimeCachingBuilderExtensions'调用目标抛出了异常。 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
答案 0 :(得分:0)
您不应该更改构建平台。一切都应该编译为&#34;任何CPU&#34;平台。
发生了LibSass_64的原始问题,因为发布过程已将LibSass.x64.dll和libsassnet.dll复制到bin目录。应从bin中删除这些程序集,并且在店面项目中有一个特殊操作来执行此操作。遗憾的是,发布过程要么不运行此操作,要么将libsass程序集复制到bin中。需要解决这个问题。
同时bin目录应包含LibSassNetProxy.dll,它将从App_Data目录加载正确版本的libsass程序集,具体取决于运行时的平台。