【问题标题】:"The name 'Html' does not exist in the current context" exception“当前上下文中不存在名称‘Html’”异常
【发布时间】:2014-06-14 19:06:47
【问题描述】:

我正在控制台应用程序中呈现Spark 模板,我正在尝试像这样使用RenderPartial

${Html.RenderPartial("_mypartial.spark", myData)}

但是我在编译视图时遇到了这个错误:

The name 'Html' does not exist in the current context

Shared\_global.spark 我添加了这个导入:

<use namespace="System" />
<use namespace="System.Web.Mvc" />
<use namespace="System.Web.Mvc.Html" />
<use namespace="System.Collections.Generic" />
<use namespace="System.Linq" />

其他一切都很好,只是没有定义Html

这有什么不同,我使用嵌入式 NancyFX 引擎渲染它。

【问题讨论】:

标签: asp.net-mvc spark-view-engine nancy


【解决方案1】:

我相信问题不在于视图本身。我不熟悉 NancyFX 引擎,但所有引擎视图都应该使用基本视图。默认在views文件夹的web.config中:

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <pages pageBaseType="System.Web.Mvc.WebViewPage">

当然你没有使用剃须刀,这只是一个比较,Html 存在于System.Web.Mvc.WebViewPage 上。如何配置 NancyFX,配置需要定义支持 HtmlHelpers 的配置(我不确定是 MVC 还是 NancyFX 自带的)。

拍了look at Gibhub之后看起来很像:

<system.web.webPages.razor>
    <pages pageBaseType="Nancy.ViewEngines.Razor.NancyRazorViewBase">

NancyRazorViewBase has HtmlHelpers on it 听起来很像配置问题。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-02
  • 2014-04-22
  • 2017-06-17
  • 2015-09-11
  • 1970-01-01
相关资源
最近更新 更多