Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

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.

like image 241
Evan Avatar asked Jun 01 '11 16:06

Evan


2 Answers

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.

like image 198
Darin Dimitrov Avatar answered Oct 20 '22 02:10

Darin Dimitrov


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.

like image 4
ChrisFox Avatar answered Oct 20 '22 04:10

ChrisFox