如果从BundleTransformer的版本1升级到版本2,您可能会收到以下消息:
无法找到创建JavaScript实例的工厂 名为
MsieJsEngine
的引擎。
像我一样,你可能甚至没有意识到你升级的不仅仅是一个点发布。
如何解决?
答案 0 :(得分:13)
首先删除它并阅读本链接的其余部分
https://github.com/Taritsyn/JavaScriptEngineSwitcher/wiki/How-to-upgrade-applications-to-version-2.X
基本上你会做以下事情:
using
语句以便能够使用扩展方法(如果您选择这种方式)我最终得到了类似的东西:
using JavaScriptEngineSwitcher.Core;
using JavaScriptEngineSwitcher.Msie;
using JavaScriptEngineSwitcher.V8;
....
public class JsEngineSwitcherConfig
{
public static void Configure(JsEngineSwitcher engineSwitcher)
{
engineSwitcher.EngineFactories
.AddMsie(new MsieSettings
{
UseEcmaScript5Polyfill = true,
UseJson2Library = true
})
.AddV8();
engineSwitcher.DefaultEngineName = MsieJsEngine.EngineName;
}
}
答案 1 :(得分:1)
我按照说明操作,但我的代码现在在BundleConfig上打破了
var cssTransformer = new StyleTransformer();
在
name
配置元素的/configuration/bundleTransformer/less/jsEngine
属性中未指定JavaScript引擎的名称。如果您尚未安装JavaScript引擎,那么正确工作 建议使用此模块安装以下NuGet之一 包:* JavaScriptEngineSwitcher.Msie * JavaScriptEngineSwitcher.V8 * JavaScriptEngineSwitcher.ChakraCore
安装软件包后,需要设置一个JavaScript引擎的名称(for 例如,
MsieJsEngine
)到name
属性/configuration/bundleTransformer/less/jsEngine
配置 元件。