错误"'〜/ Views/Page/home.aspx'中的视图必须从ViewPage,ViewPage <TViewData>,ViewUserControl或ViewUserControl <TViewData>派生

Gle*_*ven 15 asp.net-mvc views asp.net-mvc-2

我刚刚安装了MVC2,我有一个看起来像这样的视图

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Home.Master" Inherits="System.Web.Mvc.ViewPage" %>    
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Home
</asp:Content>    
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">    
    <h2>Home</h2>    
</asp:Content>
Run Code Online (Sandbox Code Playgroud)

控制器只是返回视图.但是当我运行页面时,我收到此错误:

System.InvalidOperationException:'〜/ Views/Page/home.aspx'中的视图必须从ViewPage,ViewPage,ViewUserControl或ViewUserControl派生.

Lev*_*evi 20

您可能无意中将两个版本的MVC框架加载到同一个应用程序中.要确认,请从http://aspnet.codeplex.com/releases/view/41742下载MVC 2期货.此ZIP文件中有一个文件MvcDiagnostics.aspx.

  1. 将MvcDiagnostics.aspx复制到Web项目的根目录.
  2. 重现错误.
  3. 在重现错误之后,转到/MvcDiagnostics.aspx并查看是否有关于正在加载的框架的多个版本的抱怨(将以粗体红色字体表示).如果是这种情况,该工具应建议解决方案.

完成后,不要忘记从项目中删除MvcDiagnostics.aspx.