在Razor页面中使用@ {Html.RenderPartial时出错

时间:2017-12-14 17:30:14

标签: c# razor asp.net-core

按照这里关于如何在新的Razor页面上重用HTML块的答案,我收到以下错误:

> InvalidOperationException:传递给ViewDataDictionary的模型项的类型为'xxxxx.Pages.IndexModel',但此ViewDataDictionary实例需要xxxxx.Pages._mainMenu_Page'类型的模型项。

Index.cshtml中的

@{Html.RenderPartial("_mainMenu");}"

这是index.cshtml文件(相关部分的一部分):

page
@model IndexModel
@{
    ViewData["Title"] = "Home page";
 }



<div class="row">
    <section class="parallaxBox">

        <div class="UpperMenu">
            <div class="col-lg-1 col-md-1 hidden-sm hidden-xs">

            </div>

            <div class="col-lg-5 col-md-5 col-sm-6 col-xs-6">
                <h1><span>Menachem Design</span></h1>
            </div>



             <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">


                  @{Html.RenderPartial("_mainMenu");}

            </div><!-- /col-lg-6 -->

        </div><!-- /.UpperMenu -->

显然这一行会导致问题:

@{Html.RenderPartial("_mainMenu");}

并且视图(_mainMenu)是:

@page


 <nav class="UpperNavigation navbar navbar-default">
   <div class="container-fluid">
     .... (the rest of the HTML code)

我试图谷歌,以及看这里,但没有找到答案 有什么问题?

0 个答案:

没有答案