【发布时间】:2014-09-28 15:10:20
【问题描述】:
我一直在尝试实施this 解决方案,以拥有一个使用asp 母版页的剃须刀视图页面。我遇到的问题是母版页不能继承MVC ViewMasterPage:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="System.Web.Mvc.ViewMasterPage" %>
解析器错误消息:“System.Web.Mvc.ViewMasterPage”类型不明确:它可能来自程序集“C:\Projects\OpenDataPortal\OpenDataPortal\bin\System.Web.Mvc.DLL”或程序集“ C:\Projects\OpenDataPortal\OpenDataPortal\bin\OpenDataPortal.DLL'。请在类型名称中明确指定程序集。
我使用 .NET Reflector 检查了这个 ViewMasterPage 并确定它包含 Razor 页面上使用的所有 Html 帮助程序等。因此,这应该允许我在使用此母版页的 RazorView.aspx 页面上执行以下操作,就像在解决方案中一样(Html 帮助程序和 ViewBag):
<% Html.RenderPartial((string) ViewBag._ViewName); %>
我还确定 web.config 中的 MVC 程序集应该没有问题:
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-5.2.2.0" newVersion="5.2.2.0" />
</dependentAssembly>
我也不确定母版页和/或 RazorView.aspx 页面的代码隐藏和/或设计器是否会导致任何问题。
【问题讨论】:
标签: c# asp.net asp.net-mvc razor master-pages