I am using ASP.NET MVC 3. I have created a strongly typed view that has a form. At the bottom of the page I have and ActionLink
@Html.ActionLink("Edit", "Edit", new { id = Model.UserId})
this will allow the user to edit the information. When I run the app I get the following error.
Compiler Error Message: CS0135: 'Model' conflicts with the declaration
'System.Web.Mvc.WebViewPage<TModel>.Model'
What could this be.
I guess somewhere in your view you have used a strongly typed helper with a lambda expression using the reserved Model
keyword. Like for example:
@Html.TextBoxFor(Model => Model.SomeProperty)
it should be:
@Html.TextBoxFor(x => x.SomeProperty)
or any other name.
I found simply replacing the capital M with a small m solved this. i.e. from
@Html.TextBoxFor(Model => Model.SomeProperty)
to
@Html.TextBoxFor(model => model.SomeProperty)
Perhaps it is more ambiguous, but it is less of a change if you want to keep things similar to the way they were.