【问题标题】:RazorEngine 3.2.0: Razor Namespace not found in .cshtml FileRazorEngine 3.2.0:在 .cshtml 文件中找不到 Razor 命名空间
【发布时间】:2013-02-11 10:05:40
【问题描述】:

我在 类库项目中使用 RazorEngine 3.2.0。

我通过对以下 SO 问题的以下回答解决了一些与类库相关的问题:Razor intellisense error: Feature 'extension method' cannot be used because it is not part of the ISO-2 C# language specification

问题

我尝试使用@inherits 关键字。如果我view-class 编写完整的限定名称,intellisense 工作。如果我尝试从 RazorEngine.Templating.TemplateBase<T> 继承,似乎整个 RazorEngine-Assemlby 没有解决

模板如下所示:

@inherits RazorEngine.Templating.TemplateBase<ViewModels.PrintCatalogData>
<!DOCTYPE html>
<html>
<head>
...

运行时它可以工作 - 只是 智能感知失败

问题

智能感知识别 RazorEngine-Assembly 需要什么?

【问题讨论】:

    标签: razor intellisense razorengine


    【解决方案1】:

    @inherits 可能不喜欢完全限定的名称。尝试将命名空间 RazorEngine.Templating 添加到 web.config,然后从视图模板中删除完全限定名称。

      <system.web.webPages.razor>
         <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc,    Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
         <pages pageBaseType="System.Web.Mvc.WebViewPage">
            <namespaces>
              <add namespace="System.Web.Mvc" />
              <add namespace="System.Web.Mvc.Ajax" />
              <add namespace="System.Web.Mvc.Html" />
              <add namespace="System.Web.Optimization"/>
              <add namespace="System.Web.Routing" />
              <add namespace="Assemblies"/>
              <add namespace="RazorEngine.Templating"/>
              <add namespace="Resources"/>
            </namespaces>
         </pages>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-08
      • 2022-08-02
      • 1970-01-01
      • 2018-12-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多