【问题标题】:PartialView must derive from WebViewPage errorPartialView 必须派生自 WebViewPage 错误
【发布时间】:2013-06-05 18:07:17
【问题描述】:

在其他文件夹而不是 Views 文件夹中调用 PartialView 时出现“必须从 WebViewPage 派生”错误。

错误

System.InvalidOperationException: The view at '~/Modules/HtmlContent/_HtmlContent.cshtml' must derive from WebViewPage, or WebViewPage<TModel>.
PartialView adding

Page.cshtml

<div class="side">
    @Html.Action("Side")
</div>

HomeController.cs

public ActionResult Side()
{
    return PartialView("~/Modules/HtmlContent/_HtmlContent.cshtml");
}

文件层次结构

Modules
|
+-- HtmlContent
|             |
|             +-- _HtmlContent.cshtml
|
Views
    |
    +-- Home
    |      |
    |      +-- Index.cshtml
    |      |
    |      +-- Page.cshtml
    |
    +-- Shared
             |
             +-- Layout.cshtml
             |
             +-- _Partial.cshtml

【问题讨论】:

    标签: asp.net-mvc razor asp.net-mvc-partialview


    【解决方案1】:

    您需要将 web.config 放在此自定义文件夹的根目录中。与~/Views/web.config 相同。在此 web.config 中,您将找到指示 Razor 页面类型的部分:

    <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" />
          </namespaces>
        </pages>
    </system.web.webPages.razor>
    

    注意pageBaseType 是如何设置为System.Web.Mvc.WebViewPage 的。

    或者,您可以将以下内容添加到 Razor 视图的顶部:

    @inherits System.Web.Mvc.WebViewPage
    

    【讨论】:

    • 嗨@Darin Dimitrov,我试过你提出的解决方案。实际上我已经创建了区域。我在我的区域视图文件夹中添加了一个 web.config 文件,但仍然没有运气。替代解决方案正在运行,但您知道很难为每个视图添加。
    猜你喜欢
    • 2011-12-28
    • 2013-09-06
    • 2013-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    相关资源
    最近更新 更多