C# CS1003:语法错误&x27&燃气轮机';剃须刀中的期望值

C# CS1003:语法错误&x27&燃气轮机';剃须刀中的期望值,c#,asp.net-mvc-4,razor,C#,Asp.net Mvc 4,Razor,在为布局视图模型使用抽象基类方面,我正在尝试一些新的东西(对我来说) 问题是,当我按原样运行站点时,它会抛出一个(对我来说)非常神秘的异常。这个异常意味着什么,我可以做些什么来解决它 布局 @model MyApp.Core.ViewModels.LayoutViewModel <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /&g

在为布局视图模型使用抽象基类方面,我正在尝试一些新的东西(对我来说)

问题是,当我按原样运行站点时,它会抛出一个(对我来说)非常神秘的异常。这个异常意味着什么,我可以做些什么来解决它

布局

@model MyApp.Core.ViewModels.LayoutViewModel

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>@Model.Title</title>
</head>
<body>
    <div>
       @RenderBody()
    </div>
</body>
</html>
@model MyApp.Core.ViewModels.LayoutViewModel
索引模型

namespace MyApp.Core.ViewModels
{
    public abstract class LayoutViewModel
    {
        public string Title { get; set; }
    }
}
namespace MyApp.Core.ViewModels.Home
{
    public class IndexViewModel : LayoutViewModel
    {
        public string Body { get; set; }
    }
}
控制器

[HttpGet]
public ActionResult Index()
{
    var model = new IndexViewModel
        {
            Title = "Hello World",
            Body = "Hello World"
        };


    return View(model);
}
例外情况呢

编译错误说明:编译过程中发生错误 编译服务此请求所需的资源。请 查看以下特定错误详细信息并修改源 适当地编码

编译器错误消息:CS1003:语法错误,应为'>'

源错误:

Line 27:
Line 28:
Line 29:     public class _Page_Views_Home_Index_cshtml : 
System.Web.Mvc.WebViewPage<FutureStateMobile.Core.ViewModels.Home.IndexViewModel;>
{ 
Line 30:          
Line 31: #line hidden
第27行:
第28行:
第29行:公共类\页面\视图\主页\索引\ cshtml:
System.Web.Mvc.WebViewPage
{ 
第30行:
第31行:#隐藏行
源文件:c:\Users\Chase\AppData\Local\Temp\Temporary ASP.NET Files\root\b314e0d7\36f52db\App_Web_index.cshtml.a8d08dba.yr7oemfz.0.cs 电话号码:29

比较和对比:

布局

@model MyApp.Core.ViewModels.LayoutViewModel

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>@Model.Title</title>
</head>
<body>
    <div>
       @RenderBody()
    </div>
</body>
</html>
@model MyApp.Core.ViewModels.LayoutViewModel
索引

@model MyApp.Core.ViewModels.Home.IndexViewModel;

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


<h1>@Model.Body</h1>
@model MyApp.Core.ViewModels.Home.IndexViewModel;
明白了吗?答案如下:

其中一个有一个不应该在那里的


我只是添加了两行,然后删除了…问题解决了

@model MyApp.Core.ViewModels.LayoutViewModel
@model MyApp.Core.ViewModels.Layout_OrOther_Model
试着编译,你会得到一个错误(只有一个模型,诸如此类) 删除其中一个

@model MyApp.Core.ViewModels.LayoutViewModel
编译

这对我很有用!

糟糕:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<DSNY.Core.Interfaces.IUser>" %>

好:



编译器一直告诉我,它希望有一个额外的

啊,哈哈哈,好消息。我花了太多时间在.cs上,认为
是第二天性。>!玩捉迷藏的好方法:)在注释框上不起作用。@chase学习razor将什么视为标记以及它将什么视为代码似乎带来了一个新的惊喜每周为我:)@AakashM你到底是怎么想出来的?我的意思是,错误消息根本无法说明什么是错的。它也没有指向cshtml中导致问题的行。绝对是一个向上投票。哦,天哪。如果它是一条蛇,它会咬我的。thanksugh--没有在我的.ASCX顶部显示只有一个GT的行两个GT的一个。