我将在这里失去理智,因为以下几点毫无意义。
这是我的_Layout.cshtml
<!DOCTYPE html>
<html>
<head>
</head>
<body>
@RenderBody()
</body>
</html>
这是我的控制器:
[AllowAnonymous]
public async Task<ActionResult> Show(string id)
{
var a = new TournamentViewModel();
a.IsAdmin = true;
return View(a);
}
这是我的观点
@using System.Threading
@using System.Web.Mvc.Html
@using Microsoft.AspNet.Identity
@model MyProj.Models.ViewModels.TournamentViewModel
@if (@Model != null)
{
var adminUser = @Model.IsAdmin;
if (adminUser)
{
}
}
这是错误
描述:编译服务此请求所需的资源时发生错误。请查看以下特定错误详细信息并相应地修改源代码。 编译器错误消息:CS1513:}预期 来源错误:
第81行:} 第82行:} 第83行:}
以下是我的尝试:
在我看来,如果我将var adminUser = @Model.IsAdmin;
更改为var adminUser =true
,那么这可以毫无问题地工作。
如果我删除以下代码
if (adminUser)
{
}
然后它没有问题。
我没理解,任何地方都没有语法错误。另一件我没有得到的是我清空了我的_Layout.cshtml,但它在第83行失败了,不知道从哪里得到那些额外的html线。
答案 0 :(得分:2)
问题是你在if循环中编写@Model
而不是Model
。尝试删除@
,你应该没问题。