Getting Started with ASP.NET MVC 5 using Visual Basic

4.6 (35 votes)

This tutorial is the first in a series of a Visual Basic versions of the Introduction to ASP.NET MVC 5 tutorials published on the site. The original series, produced by Scott Guthrie (twitter @scottgu ), Scott Hanselman (twitter: @shanselman ), and Rick Anderson ( @RickAndMSFT ) was written using the C# language. My versions keep as close to the originals as possible, changing only the coding language. The narrative text is largely unchanged from the original and is used with permission from Microsoft.

This tutorial series will teach you the basics of building an ASP.NET MVC 5 Web application using Visual Studio 2013 and Visual Basic.  A Visual Studio Express For Web project with VB source code is available to accompany this series which you can download.

The tutorial series comprises 11 sections in total. They cover the basics of web development using the ASP.NET MVC framework and the Entity Framework for data access. They are intended to be followed sequentially as each section builds on the knowledge imparted in the previous sections. The navigation path through the series is as follows:

  1. Getting Started
  2. Adding a Controller
  3. Adding a View
  4. Adding a Model
  5. Creating a Connection String and Working with SQL Server LocalDB
  6. Accessing Your Model's Data from a Controller
  7. Examining the Edit Methods and Edit View
  8. Adding Search
  9. Adding a New Field
  10. Adding Validation
  11. Examining the Details and Delete Methods

1. Getting Started

Start by installing and running Visual Studio Express 2013 for Web or Visual Studio 2013.

Visual Studio is an IDE, or integrated development environment. Just like you use Microsoft Word to write documents, you'll use an IDE to create applications. In Visual Studio there's a toolbar along the top showing various options available to you. There's also a menu that provides another way to perform tasks in the IDE. (For example, instead of selecting New Project from the Start page, you can use the menu and select File > New Project.)

Beginning MVC

Creating Your First Application

Click New Project, then select Visual Basic on the left, then Web and then select ASP.NET Web Application. Name your project "MvcMovie" and then click OK.

Beginning MVC

In the New ASP.NET Project dialog, click MVC and then click OK.

Beginning MVC

Visual Studio uses a default template for the ASP.NET MVC project you just created, so you have a working application right now without doing anything! This is a simple "Hello World!" project, and it's a good place to start your application.

Beginning MVC

Click F5 to start debugging. F5 causes Visual Studio to start IIS Express and run your web application. Visual Studio then launches a browser and opens the application's home page. Notice that the address bar of the browser says localhost:port# and not something like That's because localhost always points to your own local computer, which in this case is running the application you just built. When Visual Studio runs a web project, a random port is used for the web server. In the image below, the port number is 1804. When you run the application, you'll probably see a different port number.

Beginning MVC

Right out of the box this default template gives you Home, Contact and About pages. The image above doesn't show the HomeAbout and Contact links. Depending on the size of your browser window, you might need to click the navigation icon to see these links.

Beginning MVC

Beginning MVC

The application also provides support to register and log in. The next step is to change how this application works and learn a little bit about ASP.NET MVC. In the next section, you will look at adding the 'C' part of MVC - a Controller


You might also like...

Date Posted:
Last Updated:
Posted by:
Total Views to date: 123579


- Clive Chinery

Well done Mike!

- Jeff Bowman

Good job, Mike.

We must preserve our culture and heritage ;-)

- Tim

Great series Mike! Any leads on books covering MVC 5 and VB or books that might show code for both? I know the Wrox Professional MVC 5 is due out this month but haven't found anything stating whether it will include both C# and VB code.

- Mike


I'm not aware of any VB-only MVC books. Previous editions of the Wrox MVC books have been C# only, so I doubt that will change with the next edition.

I'm just finishing a port of Tom Dykstra's EF6 and MVC5 tutorials ( to VB. They should be ready in a day or two.

- Joe McGrath


I'm a vb guy that converts C# code when I need.

I read most of Adam Freeman "Pro mvc4"
And this now gonna help me a lot

hmm.. they get into ninject and mention unity
hmm.. I not much of a jquery javascript dude
I a formsengineview type guy I guess.

thinking my .net forms viewstate objectivedatasource type background along with this site gonna help me get through stuff .. hoping dbcontext help me avoid jquery hill (for bit anyways)

excuse if nuttin I said makes sense... for I not much of a 'client' script coder.. this may help me at least bridge my aspx to razor engine .. and avoid jquery for bit (from at least getting a grid to act like a gridview via helpers n stuff) .. and maybe start with jquery via validators I saw you mention somewhere...

just typin my thoughts outloud.. I'll prob reread after looking closer at this site and go 'ahhh' what was I saying!

- Bill K

Have programmed using VB6, .net is a new experience. Excited to get started.

- Raphael Fonua

The set up and delivery is both concise and clear everything I need when I am trying to learn and understand a tutorial. Thank you very much.



- Dan H

I've also looked for a book that covers MVC and VB.Net. The only one I found was "ASP.NET MVC Framework Unleashed" by Stephen Walther but it's from 2009 so I'm concerned that it's too out-dated. Anyone have any other suggestions?

- Mike

@Dan H,

I didn't know that Stephen Walther's book included VB examples. It covers MVC 1.0 and is quite old. A large chunk of the basic framework is still the same but the preferred view engine is Razor and data access is generally done using the Entity Framework rather than Linq to SQL these days.

- Ghazanfar

Nice working. Please keep it up to convert csharp code into
Its very helpful for vb programmers.

Recent Comments

Pam 30/08/2017 11:30
In response to Sending Email in Razor Pages
Mike, RazorPages sound like a nice choice for somebody still working in ASP classic who wants to to...

Robby Robson 15/08/2017 00:43
In response to Routing in Razor Pages
Mike: great stuff. Now that .Core Standard 2.0 is formally out, how soon will you rewrite your book...

Satyabrata Mohapatra 28/07/2017 08:59
In response to Sending Email in Razor Pages
Bit off topic, but congratulation sir for your MVP award. You deserve it !!!...

Satyabrata Mohapatra 23/07/2017 16:43
In response to Razor Pages - The Elevator Pitch
@Dale Severin You can continue to build apps using web pages....

Satyabrata Mohapatra 23/07/2017 16:40
In response to Sending Email in Razor Pages
Thanks for sharing...learned a lot...

Gfw 22/07/2017 11:53
In response to Sending Email in Razor Pages
Question... Does System.Net.Mail support SSL?...

Dale Severin 20/07/2017 03:38
In response to Razor Pages - The Elevator Pitch
I work with razor web pages extensively. I appreciate the rapid development it permits me to I am as...

Obinna Okafor 14/07/2017 01:19
In response to Routing in Razor Pages
Thank you, Mike. Good post....

Satyabrata Mohapatra 11/07/2017 16:02
In response to Routing in Razor Pages
Very powerful routing system!!...

Cyrus 05/07/2017 03:41
In response to Razor Pages - Getting Started With The Preview
How can I trim packages and services as much as possible to use just razor pages? I don’t want to to...