You know what you want to be doing: building applications using ASP.NET Core MVC

And you have a plan...

... follow some tutorials, maybe watch a Pluralsight course or two. Learn enough to get started and you’ll be off building that application you’ve got all figured out in your head.

So you start following a tutorial and before you know it you’ve typed out endless lines of code.

You’ve added tons of classes and methods to your application and have precisely no idea what you’ve typed or why.

Every tutorial throws more ​terminology at you; models, controllers, view models, Razor (or is that Razor Pages?), Entity Framework. ​ Where do you even begin?

So you decide to watch a video instead.

The video looks really good, the author seems to know their stuff. But as the play-head ticks steadily across the bottom of the screen, you find yourself zoning out; your eyes glaze over, the words flow in one ear and straight out the other; nothing sticks.​

No matter how many tutorials you follow, you still can't build anything of your own

Then it dawns on you; you’ve just ​spent several hours of your precious time “learning” ASP.NET Core and still don’t understand how it all fits together or where to even start building your own application.

You have the skills, you’re prepared to put in the time, if only you could get over this speed bump you’d be off and building apps in no time.​

The thing is, with a bit of direction you absolutely ​could build your applications using ASP.NET ​Core MVC.

If you knew exactly which ​aspects of MVC to learn first and how to ​break your application ​down into tiny pieces, you could take your ideas and turn them into working features.

You ​could ​fast-forward past the tutorials and docs and get to the fun bit; where you ​build ​the applications ​​​you've already ​designed in your head.

You just need to know how to get up and running.

testimonial1

Build something real with Practical ASP.NET Core MVC

cover

Learn precisely the parts of MVC you need to build your ideas with Practical ASP.NET Core MVC.

You'll skip straight past the frustration that comes with trying to build a project using an unfamiliar framework.

Create something real; with step-by-step directions, explanations of key concepts and precise steps you can apply to your own application.

Learn a tried and trusted approach to build any feature;

  • Brainstorm ideas for your app
  • Take one tiny feature idea at a time
  • Create a rough mock-up of the interface
  • Build your tiny feature in the simplest possible way
  • Stick to hard-coded data initially
  • Introduce databases and Entity Framework
  • Refactor to ensure your app remains easy to develop

Work through the book and you’ll create a real application which evolves over time as new feature requests come in.

testimonial2

Master HTTP Gets and Posts

MVC is built on HTTP requests, usually GETS and POSTS.

If you're building ​forms to capture user input you're going to need to render ​those forms (with a GET) and accept the posted data back ​(via a POST) so you can save it to your database.


requests

Protect your app from request forgery

It's very easy to accidentally expose your site to malicious requests and attempts to trick your users into handing over their details.

The good news is you can protect yourself from these risks ​with ASP.NET Core (​by using something called Tag Helpers).


EF-context

Make your data dynamic with Entity Framework Core

The book starts by employing hard-coded data so you can get your features up and running quickly.

Sooner or later though you'll want to put that data in a database and EF Core will help you create, read and update said data.


By the end of the book you'll be able to:

  • Build your features using Controllers, Views and ViewModels
  • Do the simplest thing to get your features up and running quickly (in minutes, not hours)
  • Spot when your controllers are getting too big and refactor the business logic away
  • Introduce Entity Framework Core to an existing application
  • Get your features up and running without building a database first
  • Use tag helpers to simplify your views
  • Keep your application protected from Cross Site Request Forgery
  • Add validation to your forms to protect your app from bad user input
  • Diagnose errors that crop up along the way

testimonial3


Buy now - instant access to the entire book online

Build a real application from scratch using ASP.NET Core MVC 2.1, take your ideas and ​transform them into working software.

Practical ASP.NET Core MVC - The Complete Package

Everything you need to take your ideas and build them using ASP.NET Core MVC with a little added javascript and Web API to make your application spring into life.

​Practical steps to build your application plus ​guide to more advanced features, downloadable source code and and ​how to add Microsoft Identity to ​the mix.

pmvc (1)

Practical ASP.NET Core MVC Ebook (PDF) - Updated for ASP.NET Core 3!

Build your ideas using ASP.NET in hours not weeks.

Step by step guidance, explanations of the underlying concepts and a pragmatic, iterative approach to build your features.

Bonus #1: Downloadable Source Code (Practical ASP.NET Core MVC)

Sometimes you just need to browse the code in one place and figure out how it all clicks together.

Bonus #2: Upping the ante (PDF)

Towards the end of the book are some ideas for additional features to build to really flex your new found MVC skills!

Get this comprehensive 40 page guide detailing how I would approach those features (including mockups, requirement breakdowns and detailed explanations).

You'll see how to make your application come to life with a little javascript and Web API.

Bonus #3: Downloadable Source Code (Upping the ante)

Explore and pick apart my solutions for the additional features referenced in the book.

Bonus #4: *Screencast* - Add MS Identity to an existing MVC application

See how to take the app you build with Practical ASP.NET Core MVC and extend it to support authentication and authorization, enabling your users to sign up and sign in to the app.

An unhandled error has occurred. Reload 🗙