如何在Spark视图中添加html Helpers

时间:2012-08-02 17:09:45

标签: spark-view-engine nancy

我想在我的spark视图中使用htmlHelpers,但我不断收到以下错误。

  

错误CS0234:类型或命名空间名称'Mvc'不存在于   命名空间'System.Web'(您是否缺少程序集引用?)

我已将System.Web.Mvc程序集添加到项目中。我还在模块中添加了以下代码(只是为了让它工作 - 我可能需要将这些代码添加到引导程序中 - 不知道该怎么做!)

var settings = new SparkSettings()
 .SetDebug(true)
 .SetAutomaticEncoding(true)
 .AddAssembly("System.Web")
 .AddAssembly("System.Web.Mvc")
 .AddNamespace("System.Web.Mvc")
 .AddNamespace("System.Web.Mvc.Html");

我还尝试将命名空间添加到_global.spark文件

有人可以告诉我在火花视图中使用htmlHelpers时我必须做些什么。

2 个答案:

答案 0 :(得分:2)

Nancy的默认Spark基本视图不包含public HtmlHelper Html { get; set; }属性。

你可以see the default view here

为MVC集成is here实现了Spark视图,您将看到公开的Html属性,它允许您的Spark视图访问它并调用帮助程序。

理论上,您可以从NancySparkView继承,并在Spark设置中将其指定为基本视图,并在该类中添加该属性以及对System.Web.Mvc等的引用,然后您的视图应该假设一切都被正确引用,就能调用帮助器。

希望有所帮助 Rob G

答案 1 :(得分:0)

我不是南希专家,但我确信View的类型与Asp.Net MVC的类型不同。因此,理论上,您不应该使用MVC帮助程序,因为它们需要View上的Html属性。