Click here to Skip to main content
13,138,791 members (55,531 online)
Rate this:
Please Sign up or sign in to vote.
See more:
I have started learning MVC.
I was making a sample App from One of learning tutorial.
I am used to work with rich ASP.Net Server controls like Grid View, Datalist, Authentication and Validation controls, they are not present in MVC,
When I was adding a View, there was a option for Razor View Engine(cshtml) and genrated views had a extension of cshtml, moreover the generated HTML in views was little scary as it contained HTML objects methods and blah blah...(not like usual html).
I love c# and code behind and I am not a superb HTML developer. I do it mostly through C#.

So do I have to Learn a bag full of things like Razor view engine, that scary HTML to master MVC??
What are basic prerequisites to learnMVC?
Posted 13-Mar-13 0:41am
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Rate this: bad
Please Sign up or sign in to vote.

Solution 2

Knowing HTML, JavaScript, CSS and obviously C# or VB is all you need to be a good MVC developer.

You shouldn't be doing any web development if you don't know the client part (ie, HTML, CSS, JS; etc). It's true that there are several guys out there that only user web server controls, but that really limits what you can do.

MVC uses a different approach to development than web forms (where clear separation of concerns and test-ability are important concepts) and this should be where your learning curve should be.

It also helps to know some stuff about how a webserver works internally when you want to do some more advanced stuff.

Just don't be scared. Do it one step at a time and you will get it. Just don't read too much. Practice it.

Lots of highly useful tutorials are to be found here: ALL about MVC[^]
Rate this: bad
Please Sign up or sign in to vote.

Solution 3

Hi there,

Obviously you should know C# and HTML for developing web applications in MVC.
MVC open new doors over traditional web forms and server controls you are talking about. MVC uses totally different approach of developing web applications than web forms.
MVC has more clearer architecture than web forms where your business logic and the UI are separated according to its concerns. I.e. Models, Views and Controllers. controllers hold your business logic where your views hold your UI. this was not possible in web forms where you had business logic attached as code behind .cs pages.

other than this, MVC supports TDD(test driven development). Visit this Link[^]

well, these are some basic ideas behind MVC but if your major concern is HTML than don't let Razor and its extension scare you. :)

Razor is just a view engine in MVC. MVC is much more than just a view engine(don't think about MVC without View engine too). You can use .aspx/.ascx file templates of web forms as your view engine.

Razor is not a programming language but it uses C# syntex for embedding code in a view page(of course you have faced such situations where you wanted to embed some logic inside your HTML page....long years ago..). you can visit this link[^] for more knowledge about Razor

one more good news that ASP.Net MVC 6 includes the feature named as Tag helpers.

please mark as answer if it helps.

CHill60 20-May-15 5:06am
Quote: "please mark as answer if it helps." - OP didn't bother 2 years ago, I doubt they'll bother now

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy |
Web03 | 2.8.170915.1 | Last Updated 20 May 2015
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100