(Nancy)Razor View Engine部分视图呈现完整的HTML

时间:2013-11-13 15:28:21

标签: razor partial-views nancy

使用Nancy和Razor视图引擎,我得到以下情况。 我有一个观点:

@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase

<!DOCTYPE html>
<html>
    <head>
        <title></title>
    </head>
    <body>
        @Html.Partial("_PartialPage1")
    </body>
</html>

包含以下内容的部分视图:

   <strong>I am partial.</strong>

运行应用程序后生成的HTML看起来像

<!DOCTYPE html>
<html>
    <head>
        <title></title>

    </head>
    <body>
        <div>
    <!DOCTYPE html>
<html>
    <head>
        <title></title>

    </head>
    <body>


<strong>I am partial.</strong>

</body>
</html>

</div>
    </body>
</html>

似乎部分呈现为完整的HTML页面而不是片段。有谁知道如何解决这个问题?

编辑:我正在使用Nancy.Hosting.Aspnet。

更新:我正在使用_ViewStart.cshtml,它似乎也应用于局部视图。这可以预防吗?

更新: 视图文件夹中的文件

Views
  Default
    _ViewStart.cshtml
    Index.cshtml
  Partials
    _PartialPage.cshtml
  Shared
    _LayoutPage.cshtml

_ViewStart.cshtml包含对要使用的布局页面的引用。

@{
  Layout = "Views/Shared/_LayoutPage.cshtml";
}

问题是它也应用于_PartialPage.cshtml。独立于_ViewStart.cshtml的文件夹。 我希望你能像这样重现它。

1 个答案:

答案 0 :(得分:2)

所以简而言之,当使用Nancy / Razor de _ViewStart.cshtml时,会应用于所有视图,甚至是部分视图。 谢谢Phill清理它。