Asp.Net Core multi-tenant application Sample using #SaaSKit
This application is upgraded to support .Net 6.0.
Currently HTTPS redirection is not supported.
Nothing Complex.
I followed separate database per tenant approach.
In NetCoreSaaS.Data project, there are two different contexts.
CatalogDbContextholds global tenant level data like tenant configurationTenantDbContextholds tenant specific data like tenant user, other tenant related data
- Create migration file if not created (but its already created under
Datafolder ofNetCoreSaaS.WebHost). If you want to re-create migration later checkTempFilesfolder inNetCoreSaaS.WebHostfor migration scripts. RunCatalog Databasemigration only. - Run application. Application will itself migrate changes to database with seeding in
NetCoreSaaS_Catalogdbwith tenant data. - For testing purpose, I have configure application to listen request in host
http://*.localhost:6001(you can find configuration inProgram.csfile.) Default seeding has only added two tenant which hostname arehttp://tenant1.localhost:6001andhttp://tenant2.localhost:6001therefore request from only these two hostname will be resolved else tenant will not resolve. You can find seeding inNetCoreSaaS.WebHost > Infrastructures > Helpers > DbHelperfolder. - Once application is running, go to
http://tenant1.localhost:6001andhttp://tenant2.localhost:6001you can find same site for two tenant. - You can also perform user signup and login operation with these tenants.