2011-04-26 32 views
3

我试图做到这一点在_LayoutPage1.cshtml:认定书的.ascx CSHTML文件

@{ this.Html.RenderPartial("~/Views/Shared/Header.ascx"); } 

然而,由于我在剃刀是,intelicense不显示“.RenderPartial”为this.Html 。

如果我在.aspx页面中,它很好用。

我错过了什么吗? @using指令?

谢谢!

回答

1

至少您需要将System.Web.Mvc.Html名称空间导入到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="YOURBASE"> 
     <namespaces> 
      <add namespace="System.Web.Mvc.Html" /> 
     </namespaces> 
    </pages> 
</system.web.webPages.razor> 
+0

我的layout.cshtml实际上不在我的Views文件夹中。我把它放在另一个名为Resources的文件夹中。我尝试在cshtml文件的顶部放置“@using System.Web.Mvc.Html”,但this.Html.RenderPartial()仍然不可用。我会认为这会解决它。 – 2011-04-26 19:35:15