我正在尝试使用Spark和MVC渲染一个简单的html视图但是我得到以下错误:
The view 'Principal.html' or its master could not be found. The following locations were searched:
~/Views/Site/Principal.html.aspx
~/Views/Site/Principal.html.ascx
~/Views/Shared/Principal.html.aspx
~/Views/Shared/Principal.html.ascx
Site\Principal.html.spark
Shared\Principal.html.spark
在我的控制器中我有:
public ViewResult Principal()
{
return View("Principal.html");
}
我在我的Global.asax,Start方法
中注册了spark enginaprotected override void Start()
{
...
RegisterViewEngine(ViewEngines.Engines, RouteTable.Routes);
RegisterRoutes(RouteTable.Routes);
}
private void RegisterViewEngine(ViewEngineCollection engines, RouteCollection routes)
{
SparkViewFactory engine = new SparkViewFactory();
RegisterFactory.DefaultRegister(IoCService.MyContainer, engine, routes);
engines.Add(engine);
}
如何指示要呈现的页面是html(Principal.html)和NOT spark extension?
提前致谢!
答案 0 :(得分:1)
如果您将Principal.html
重命名为Principal.spark
或Principal.html.spark
应该修复它。
Spark不知道应该查找要呈现的.html
个文件。我不建议告诉Spark处理所有.html
文件,但是如果你真的想要,那么你可以实现自己的Custom IDescriptorFilter
implementation来改变Spark查看视图的方式 - 但就像我说的那样,我我不推荐它 - 我只是将.html
文件重命名为.spark
你想要Spark接收的文件
是否有理由不能重命名html文件扩展名?