Developing mvc application - asp.net

What is mvc ? What are the benefits developing mcv website ? How can I develop mvc website, that is what I have to install,I have installed microsoft visual studio 2005 in my pc then what I have to install to develop mvc website ? I am begginer in developing website.
And which are the best free resource I can use to learn how to develop best mvc website,like ebooks or anything ?
Please give me suggestion.

Below links will surely help you to understand MVC.
ASP.NET MVC Framework Tutorial
ASP.NET MVC Framework Overview
MVC 1 download details
Also now MVC 2 is avaliable.

Two seminal examples have been published with lots of documentation:
Nerd Dinner : http://nerddinner.codeplex.com/
This was built against MVC 1.0 so some of the syntax is a bit outdated but is still applicable and it goes through several facets of your typical MVC application. There is a link on the homepage there to a walk through available in PDF and HTML form.
MVC Music Store : http://mvcmusicstore.codeplex.com/
This example is made to demonstrate some of the new MVC 2.0 features and other new MVC practices. It also has a vast document walking through the creation of the website and its code. Download the code and read the documentation.
These are by no means the best but it comes straight from the source (Microsoft dev team) and are a good start for beginners.

Here's a great place to start: http://www.asp.net/mvc

The reference #Kane gave it great. There are a number of tutorials and videos. But you can also read some blogs like: haacked.com or http://weblogs.asp.net/scottgu/.
Also there is a great codeplex project kigg that is good to look over and review.
http://kigg.codeplex.com/
Those are a few more resources to consider. Also don't forget here on SO. There are a lot of the problems that people have encountered and can be a good resource.

Related

Can someone please explain the difference between ASP.NET MVC & .NET Core 3.1

Hello I have built an application using asp.net MVC, this project is all working well but I am finding a lot of documentation with Stripe has documentation depreciated, however, the documentation is fine for asp.net core
Is it a massive change between the two types, why doesn't it seem to work with my one. I am new to all of this but it doesn't really make a lot of sense to me so please explain in lamens terms and link some articles if it would help :)
I understand your confusion :D I've worked with ASP.NET for very long (since web forms). I'll try to explain to the best of my understanding.
MVC is a design pattern that has seen a lot of success and has been adapted widely by several frameworks. ASP.NET MVC is the dot net implementation of the MCV pattern.
ASP.NET Core is a redesign of ASP.NET with a lot of new features and benefits. The biggest advertised differences is the fact that DOT NET CORE is open source and cross platform.
In an asp.net core web application you will still see the MVC pattern with several improvements since ASP.NET MVC.
If your project works perfectly you don't have to do a complete redesign. The frameworks will keep updating and as developers we need to stay updated but we can't go and redesign every project. New projects are a different story. If you start something new definitely consider using ASP.NET Core.
Here is one of Microsoft's docs that helps understand the difference.
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/choose-aspnet-framework?view=aspnetcore-3.1
If you split your application into different projects for the front-end stuff, business logic, and data access, it shouldn't be too painful to port it over. The business and data access code should mostly work the same way. it's just the bit of MVC presentation stuff that will be markedly different.

learning web app development with asp.net

I have been doing windows applications using c#.
But recently our management has planned to make some of the projects to be web based.
We thought of using asp.net with c#.
Can anybody guide me on effectively learning asp.net.
pls provide some useful links for sample projects.
Thanks in advance.
Web Forms would be a quicker route if your used to desktop development (over microsoft MVC). MVC3 is my preference but takes a bit longer to get used to if your not familiar with it. MVC3 gives you more control over your code and in my oppinion is less bloated.
May be worth looking into the MVC pattern if you go down this route.
Loads of videos to get you started here: http://www.asp.net/web-forms
They have a couple of example applications you can work through:
Web Forms: Contoso University App
MVC: MVC3 Starter App
as simple as this: http://www.asp.net
I'd recommend to start with ASP.Net MVC even you'll find it a bit complex in the beginning , Here you can find a lot of tutorials and books
you can also take a look at the MVC Music Store , it is a complete project to learn ASP.Net MVC by example.
I would steer clear of WebForms - even though it may seem a more natural fit coming from your WinForms background, you will run into issues later on. Given that you're going to have to learn a new platform anyway, makes sense to learn MVC and get off on the right foot (note that there are alternative MVC frameworks to ASP.NET MVC such as Fubu but these are probably riskier options in your situation).
PluralSight do some good online training courses, though you do need to pay for them.

Should I use ASP.NET MVC or ASP.NET 4.0 webforms

We are planning to start a new asp.net web based application in a few weeks. We have three members in our team all with experience in asp.net 2.0
We are jumping direct from asp.net 2.0 to 4.0 (skipping 3.5) and we were discussing, should we go for asp.net 4.0 webforms or should we learn/develop in asp.net MVC? However, we don't have any prior MVC experience.
If you guys think that MVC is the way to go then please recommend good books using C#.
As with all engineering decisions, it depends.
Is your timeline long enough that you can ride the learning curve? Is everyone OK with learning MVC, or are you going to get blowback? Does your team know and understand HTML and CSS? I know this seems like a silly question, but a lot of ASP.NET WebForms programmers get by without really understanding the concepts for quite some time.
Do you want to make pervasive use of Ajax and CSS? Does anyone know JQuery or one of the other JS frameworks and want to make the best of them? Is unit testing important to you?
If the answers to these questions are, in general, "yes", then I would recommend taking the plunge and going for ASP.NET MVC over WebForms. As far as a book goes, I'll leave that to others. I still have not found a book that I really like yet.
I know that I'm pretty much an exclusive ASP.NET MVC programmer for new projects going forward. IMO WebForms is a broken and outdated model. Viewstate is painful for developers and web services, and postbacks are painful for users.
If you are comfortable with and know Web Forms well, use those.
Generally, use the tool you are most comfortable with.
My suggestion is: if you are tight scheduled and development team is experienced with web forms 2.0, your choose should be web form. It is nothing so serious happend between 2.0 and 4.0 that you might loose competence. Web forms still web forms.
If you have month or so as buffer to get in into MVC, you should do that. It is more natural for web development, and what I like - more testable.
I'm personally not to quick to rewrite my applications on MVC 2.0, and even start new project with MVC.. Maybe I wait for 3.0 version :)
A lot of information is here:
http://www.asp.net/mvc
A also got sources of Mvs2inaction (please google for Mvc2inaction and be pointed to github site)
And sure you have to check Phil Haack blog.
(sorry could not post a lot of links yet))
As others have answered already about what to choose between Web Forms and MVC, if you have decided to go for MVC you can find book recommendation in following links -
https://stackoverflow.com/questions/1281726/good-asp-net-mvc-vb-books (Although the questions is about VB books but answers are for both)
https://stackoverflow.com/questions/1942068/best-resources-books-for-asp-net-mvc-framework-closed
Also I would like to recommend one new book which I have just started to read. This is good for understanding the concepts and compares Web Forms and MVC.
Programming Microsoft ASP.NET MVC - Dino Esposito

New to ASP.NET

I am wanting to learn ASP.Net and am just a beginner. I have done some windows c# forms development before but have no experience of web development.
I have looked at the ASP.net website but beyond this, does anyone have any ideas as to good learning resources particulary in relation to the differences to windows development. For instance, It seems that the way events work is quite different under ASP to windows forms.
Thanks you all.
Thank you very much. I will have a look at MVC. It looks even more complicated but if this is the way things are going then I would be better maybe to invest my learning in this.
I would advise you at this stage in ASP.NETs life to instead direct your attention at ASP.NET-MVC. This url http://www.asp.net/mvc/ is a very good resource for learning.
ASP.NET Forms do a good job of hiding the nature of a connection-less HTTP/browser based technology and presenting a familiar Form with controls and lots of useful events environment that Windows Forms developers are used to.
However this approach comes with a price. For any serious project there is no avoiding getting under the hood of ASP.NET forms and properly understanding the underlying technology. At this point you start to realise the significant compromises the ASP.NET Forms has had to make in order to make Windows Forms developers feel at home.
ASP.NET-MVC, on the other, makes no such compromises. Learning MVC means learning how HTTP works up-front. It also has the advantage of being a much more test friendly approach which when used properly will save you days of debugging.
ASP.NET website - seriously, it's a really good resource.
I'd seriously consider starting with ASP.NET MVC. You'll end up learning what you need from ASP.NET "classic" but you'll pick up all the goodness of MVC (testability, seperation of concerns in your code etc) instead of learning bad habits.
Google for "ASP.NET MVC", check out ScottGu's blog, Scott Hanselmans's blog, or search StackOverflow for ASP.NET MVC (use the ASP.NET MVC tag too).
One good place to start...
http://weblogs.asp.net/scottgu/archive/2009/04/01/asp-net-mvc-1-0.aspx
I know they are a bit out of date, but I still think the two Fritz Onion books give a great look at what's happening in ASP.NET under the hood.
Some resources:
asp.net (as you mentioned)
channel9
scott hanselman's blog (some useful entries)
Windows Client Homepage
W3Schools Tutorials (Useful for more than just .NET, but this is the .NET page)
I've been a .NET Windows Forms (not Web forms) developer for 1 and a half years. Then I switched jobs and started using WebForms for like... 2 years. Then I discovered ASP.NET MVC (January 2008) and since then although I still master ASP.NET WebForms I will always prefer ASP.NET MVC.
My recommendation also goes into ASP.NET MVC. You will have to learn HTTP, HTML and a bit of Javascript but after these you will master web development on ALL PLATFORMS.
A great alternative to ASP.NET MVC is ASP.NET Web Pages with Razor syntax. In fact, the latest release of ASP.NET MVC and the latest release of ASP.NET Web Pages both use the same view engine.
Here is a link to the complete ASP.NET Web Pages book:
Getting Started with WebMatrix and ASP.NET Web Pages
Also, here is the complete WebMatrix Content Guide:
WebMatrix Content Guide
Here's the description:
WebMatrix is a free, lightweight set of web development tools that provides the easiest way to build websites. It includes IIS Express (a development web server), ASP.NET (a web framework), and SQL Server Compact (an embedded database). It also includes a simple tool that streamlines website development and makes it easy to start websites from popular open source apps. The skills and code you develop with WebMatrix transition seamlessly to Visual Studio and SQL Server.

Forum for ASP.NET MVC site

I am buidling a new site for an organisation. I am using ASP.NET MVC. The previous site was PHP based and had a PHPBB forum. This forum opened in an IFrame, so no integration.
We want a site with all functionality integrated. I thought, I probably have to write a forum myself. However there are other ASP.NET open source forums out there just like phpbb.
Is there a way to integrate third-party forums cleanly into my site? Or am I better of coding it myself?
Check my answer to this question, for an ASP .NET MVC based forum:
Who knows a good free open source forum in C#?
If you want an ASP .NET Webforms forum I can recommend you YetAnotherForum.NET.
ASP.NET MVC is still in beta stage and not much free options are available on the .NET side of things.
It's actually a very easy task if you already have experience writing MVC app.
Not counting those that haven't got some stable releases out, most free options such as YAF are written to run as a standalone applications on classic ASP.NET webforms framework and will often requires that you use a certain fixed database platform and thus will require work to patch them so they integrate nicely with the MVC framework.
So I suggest you code it up yourself. Especially if you just want an integrated forum that don't need to have as much features as phpbb.
Or better yet, start an open source project!
The following post has numerous options: ASP.NET MVC Forum Software?

Resources