我遇到Spark问题。 我已经编译了带有视图的程序集,位于网站的bin子文件夹中,我创建如下
engine.BatchCompilation(targetFolder, Global.AllKnownDescriptors());
在我的应用程序启动时,尝试加载已编译的视图:
svf.Engine.LoadBatchCompilation(Assembly.LoadFrom(Path.Combine(basePath, "SharedViews.dll")));
调试时,我可以看到这是成功的。
但是ViewEngine没有找到那个视图。它甚至不会在它们所在的CompiledViewHolder
中寻找它们。
可能那个问题是由于IViewFolder造成的吗?
或者我应该做更多的事情来使用编译视图?
感谢
答案 0 :(得分:0)
不确定这是否有用,但在documentation中有以下段落:
没有以这种方式加载的类的动态重新编译,并且对spark文件的更改将不起作用。但是,文件必须在运行时在磁盘上可用。对此感到抱歉 - 但不同的框架仍然需要测试视图文件的存在,以了解它应该实例化的视图描述符。
您的目录结构中是否有视图文件?
答案 1 :(得分:0)
我找到了解决方案 - 我编译的视图不是在app启动时,而是使用不同的工具。因此,在编译期间对引擎(条目注册等)所做的更改是徒劳的。 所以现在我在app启动时编译视图,一切正常。