ASP.NET in Multi-tenant App, Examples in MVC, ExtJS, and Angular

Create an ASP.NET website that employs best practices and also supports multiple domains (or tenants) from both the server and client sides. The website you'll work on in this course includes clients written in ASP.NET MVC Razor, Angular, and ExtJS.
Course info
Rating
(59)
Level
Intermediate
Updated
Apr 15, 2016
Duration
6h 0m
Table of contents
Course Overview
Introduction
Architecting for Multi-tenancy
Building a Basic Multi-tenant App with ASP.NET MVC Razor and EF
Building the Core Components of Multi-tenancy
Applying Multi-tenancy to a New Razor View Engine and Controllers
Node.js and Gulp Basics Needed for Angular Single Page App SPA
Scaling Out Multi-tenancy with AngularJS Single Page App SPA
Publishing Sites on Premise Azure and AWS Including Redis Cache
Scaling out Multi-tenancy with Sencha's ExtJS Single Page App SPA
Description
Course info
Rating
(59)
Level
Intermediate
Updated
Apr 15, 2016
Duration
6h 0m
Description

Building a great website that supports multiple domains (or tenants) from both the server side and client side can be challenging. In this course, "ASP.NET in Multi-tenant App, Examples in MVC, ExtJS, and Angular", ASP.NET website developers like you can learn how to build a first-class, best-practices website that supports multiple tenants from both a server-side and client-side perspective. First, you'll learn how to segregate both the data and theme of each unique tenant such that each tenant has its own private website logic and theme. After that, you'll be shown how to capture the incoming request on the server side, parse that request for the domain, and guide your code through different programming logic and display themes; furthermore, you'll learn how to separately build 100%-client-side apps that leverage your web server code using the client-side SPA (Single Page JavaScript App) libraries Angular and ExtJS. Finally, you'll explore how to set up and use Node.js and Gulp as your build system for Angular apps as well as how to use Sencha's CMD for scaffolding your ExtJS app and build and minify the ExtJS app for production. By the end of this course, you'll be able to build ASP.NET websites that work with multiple tenants and use best practices with no trouble at all.

About the author
About the author

Peter is the founder of Silicon Valley Code Camp and long-time software professional specializing in mobile and web technologies. He has also been a Microsoft MVP in ASP.NET since 2006.

More from the author
Building a Website with React and ASP.NET Core
Intermediate
3h 19m
May 22, 2018
Securing Multi-tenant ASP.NET Web Apps
Intermediate
2h 37m
Sep 15, 2017
ASP.NET Core Tag Helpers
Intermediate
2h 48m
Jun 20, 2017
More courses by Peter Kellner
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi, my name is Peter Kellner, and welcome to my course, ASP. NET in Multi-tenant Web App, Examples in ASP. NET's MVC, AngularJS, and ExtJS. I'm a full-stack web developer, 10-year Microsoft MVP, and part-time conference organizer. In this course we're going to use best practices to build my three favorite sites, Silicon Valley Code Camp, Angular U, and Code Stars Summit as one multi-tenant site. Each conference is unique in design, while sharing common functionality. Some of the major topics that we will cover include ASP. NET custom routing with MVC Razor, building AngularJS with Node. js in Gulp, deploying to on-premise Azure and AWS, and using Redis in server memory for cache. By the end of this course, you will comfortable in building real-world scalable ASP. NET multitenant apps that have at their core ASP. NET, and on the front end, Angular or Ext. Before beginning the course, you should be familiar with C# and ASP. NET. If you plan on working with Angular or Ext, you should have at least intermediate JavaScript skills and at least have beginner level skills in those client-side frameworks. Please join me in this journey to learn about ASP. NET in multitenant web app with examples in ASP. NET's MVC, AngularJS, and Ext JS from Pluralsight.

Architecting for Multi-tenancy
Welcome back to ASP. NET in Multi-tenant App, Examples in MVC, ExtJS, and Angular, from Pluralsight. My name is Peter Kellner, and in this module we talk about architecting web apps for multitenancy. Multitenancy is just a concept. The implementation details are really where the rubber meets the road. and the decisions are made. For convenience, I'm breaking down architectural considerations into two parts. First I'll talk about software considerations, that is considerations that are related to developing and maintaining the multitenant site, then I'll talk about hardware considerations, and I'll include in that discussion web servers, though technically web servers are software. In this case I'm treating web servers as something that goes along with the hardware, whether it's IIS in our scenario, or Apache typically in OSX or Linux or any other OS.

Building a Basic Multi-tenant App with ASP.NET MVC Razor and EF
Explaining all the ins and outs of building a multi-tenant app is all good, but what brings it to life is building a best-practices ASP. NET website that implements the principles we've talked about in the previous modules. Welcome back to ASP. NET in Multi-tenant App, Examples in MVC, ExtJS, and Angular, from Pluralsight. My name is Peter Kellner, and in this module we will build using Visual Studio 2015, an ASP. NET 4 MVC 5 multi-tenant website from scratch.

Building the Core Components of Multi-tenancy
Welcome back to ASP. NET in a Multi-tenant App, Examples in MVC, ExtJS, and Angular, from Pluralsight. My name is Peter Kellner, and in this module we will develop the core components necessary to move forward with our goal of building a multi-tenant app. Specifically, in this module we're going to start out by working with Entity Framework to basically build what it takes to get an Entity Framework Code First application working. There's a lot of wiring that has to go on to get it off the ground, and we're going to talk about that. We're going to talk about seeding Entity Framework so that when you're building your multi-tenant app you have a reasonable set of data to work with. We're going to talk about data migrations, which is how you actually work with changing your data definitions, because of course we know our data definitions change a lot in development, data migrations is going to help a lot with that. We're then going to move in to capturing the tenant information out of the requests coming in, that is how do you know which of your multi-tenants the request is coming in, and then how do you store that? We're going to show how to integrate that into the controllers, that is that tenant in the Owin Context, how to actually bring that into the controllers. And finally, we're going to build out a robust cache solution. This is really important in multi-tenant apps, because you don't want to have to be doing all the work to figure out your tenant information on every single request, so cache is extremely important in multi-tenant apps. It's important in all apps, but in multi-tenant apps it's particularly important.

Scaling Out Multi-tenancy with AngularJS Single Page App SPA
Welcome back to ASP. NET in a Multi-tenant App, Examples in MVC, ExtJS, and Angular, from Pluralsight. My name is Peter Kellner, and in this module we'll talk about integrating AngularJS basics with Node. js, CommonJS, and Gulp. You will learn in this module how to put together an Angular website that's built using the tools we put together in the last module, that is CommonJS with Node and Gulp. We'll actually build the Silicon Valley Code Camp and the AngularU website in one project sharing common utilities. It's as if Node and Gulp were made to build AngularJS multi-tenant websites, and you will learn how to do that efficiently and productively.