我是Winforms人并且学习ASP.Net。从教程中学习使用Razor的MVC 4。这是我的代码。
@using MVC_Employee.Models;
@{
var model = new Employee()
{
Name = "Rapsy Tree",
Department = "Development",
JoinTime = DateTime.Now,
};
}
<div>
<h1>@model.Name</h1> // Getting error in typing Name and also VS intellisense not populating this.
</div>
错误
编译时错误:Tag 'h1' not closed
运行时错误:
描述:编译服务此请求所需的资源时发生错误。请查看以下特定错误详细信息并相应地修改源代码。
编译器错误消息:CS1031:预期类型
Source Error:
Line 38: Line 39: Line 40: public class
_Page_Views_employee_employee_cshtml : System.Web.Mvc.WebViewPage<.Title</h1>> { Line 41: Line 42:
#line hidden
我知道这是违反MVC规则使用Model in View但我只是想学习剃刀语法。有人可以帮我理解错误吗?感谢。
答案 0 :(得分:3)
答案 1 :(得分:3)
当您引用视图模型以使视图为强类型时,您在模型中提到了如下
@model Practise.Areas.MyPractise.Models.Dropdown
@{
var mod = new Practise.Areas.MyPractise.Models.Dropdown();
}
<div>
<h1> @mod.YourPropertyName </h1> populating this.
</div>
如果您注意上面的代码,我声明了一个名为mod的变量而不是模型
这一点很重要。基本上 MVC 使用model作为关键字来引用View as Strongly类型,并为变量使用相同的关键字。这是实际问题
答案 2 :(得分:0)
我找到了解决方案&amp;我不知道如何回答这个问题。我编辑了我的问题以反映确切的问题。这段时间我一直使用model
作为我的变量名。我将其更改为employee
,一切正常。愚蠢但真实,也无法理解它。
这是最终的工作代码
@using MVC_Employee.Models;
@{
var employee = new Employee()
{
Name = "Rapsy Tree",
Department = "Development",
JoinTime = DateTime.Now,
};
}
<div>
<h1>@employee.Name</h1> // Getting error in typing Name and also VS intellisense not populating this.
</div>
答案 3 :(得分:0)
尝试删除@using
行中的分号。