我的Razor页面上的@model不起作用

时间:2011-02-10 19:37:01

标签: model asp.net-mvc-3 razor

我想让我的剃刀页面运行,但我一直收到这个错误:

ASP._Page_Views_profile_add_cshtml.Execute()':找不到合适的方法来覆盖

在进行一些研究时我发现我需要在web.config中添加一些内容,但我还需要将“@model”添加到顶部并提供模型。到目前为止,我有这个:

@model ProfileViewModel
@{
    ViewBag.Title = "Add";
    Layout = "~/Views/Shared/_Master.cshtml";
}

@model关键字不起作用,它不会像@inherits关键字那样突出显示为黄色,我相信这是我的问题但不知道如何修复它。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

在Visual Studio设计器中,@model关键字不会以黄色突出显示。它需要指向一个有效的类,这样如果你把光标放在它上面并按 F12 ,你应该导航到相应的类定义。如果没有发生这种情况,您可能需要指定包括命名空间的完整类型名称。

呈现此特定视图的控制器操作也需要传递模型的实例:

public ActionResult Foo()
{
    ProfileViewModel model = ...
    return View(model);
}