My 2c based on a common scheme ...
This is my preferred approach (personal preferences), but, as I see it, the key differentiated factor is not business logic, but data extraction. This is one approach.
Business logic will and should work the same regardless of the data provided. From a code point of view, the data layer should be responsible for pulling only the correct tenant data based on the tenant ID. There may be some opinions that this tenant filtering of data is also done at the business level. One of the benefits is that you have the added benefit of making sure that you are working with the correct tenant data.
I don’t think you will find a suitable starter kit for the SAAS application. In my opinion, the best way is to read the code of several completed projects to get you started.
On some resources (since you did not specify which technology is accurate, I provide asp.net-mvc links)
- If you plan on using asp.net-mvc, I suggest taking a look at Mike Hadlow's blog and Sutekishop app , as well as the Rob Ashton series on some of the concepts of multi-tenancy.
- If you plan on using asp.net web forms, look at LitwareHR for codeplex (I have not personally looked at the source code, but it seems to be built from the same principles of the related article in the question).
- If I'm not mistaken, I think Dot Net Nuke is also a multi-user application.
source share