我在 ~/Views/Partials/menubar.cshtml
中有一个局部 View 。
在我的 ~/Views 文件夹中,我有一个名为 Menubar.cshtml
的母版页 <- 这个母版页调用
@{ Html.RenderPartial("menubar") }
但它说:
"Cannot resolve partial view "menubar"
我该如何解决这个问题?我试过像
这样的直接路径@{ Html.RenderPartial("~/Views/Partials/menubar.cshtml") }
还是同样的问题。
不得不说,我使用的是 Umbraco 4.11 和 Visual Studio 2012 以及 resharper。
这是我的母版页的代码(它有另一个母版页):
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = "Master.cshtml";
}
<div id="header">
<a href="/"><img src="/images/logo.gif" width="259" height="65" /></a>
<div id="sitedescription">
<h1>Runway</h1>
<h1>Off to a great start</h1>
</div>
@{ Html.RenderPartial("Menubar"); }
</div>
@RenderBody()
这是我的 View 的代码,经过简化只是为了让它一开始能正常工作,将添加一些逻辑,否则 View 将没有意义:
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
<div id="mainmenu">
<ul id="topNavigation">
<li class="home current"><a href="/">Home</a></li>
<li><a class="navigation" href="/"><span>Newz</span></a></li>
<li><a class="navigation" href="/"><span>Programmering</span></a></li>
<li><a class="navigation" href="/"><span>Support</span></a></li>
<li><a class="navigation" href="/"><span>Repair</span></a></li>
</ul>
</div>
<div class="mainmenucorner"> </div>
这是 visual studio 中的结构图像:
谁能告诉我我在这里缺少什么,现在已经花了几个小时了。
编辑 我发现我在/Views/Shared 下找到它的 id 它会自动找到它.. umbraco 似乎将此页面发布为主页 - 有什么想法吗?
最佳答案
尝试将局部重命名为 _menuBar.cshtml,并使用此渲染它:
@Html.Partial("_menuBar")
它对我有用。
关于c# - Umbraco mvc,渲染部分 View 无法解析为类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15187170/