编译器错误消息: CS0135: 'Model'与声明冲突 'System.Web.Mvc.WebViewPage<TModel>.Model'



我使用的是ASP.NET MVC 3。我创建了一个带有表单的强类型视图。在页面底部,我有ActionLink

  @Html.ActionLink("Edit", "Edit", new { id = Model.UserId}) 

这将允许用户编辑信息。当我运行应用程序时,我会收到以下错误。

  Compiler Error Message: CS0135: 'Model' conflicts with the declaration
 'System.Web.Mvc.WebViewPage<TModel>.Model'

这可能是什么。

我想在您的视图中的某个地方,您使用了一个带有lambda表达式的强类型帮助器,该表达式使用了保留的Model关键字。例如:

@Html.TextBoxFor(Model => Model.SomeProperty)

应该是:

@Html.TextBoxFor(x => x.SomeProperty)

或任何其他名称。

我发现简单地用一个小M替换大写M就解决了这个问题。即来自

@Html.TextBoxFor(Model => Model.SomeProperty)

@Html.TextBoxFor(model => model.SomeProperty)

也许这更模糊,但如果你想让事情保持原样,这就不是什么改变。

最新更新