Last post Oct 21, 2013 08:23 AM by Illeris
Oct 17, 2013 12:06 AM|Mayil_Gilli|LINK
We have one product, It is common for certain audiance so that we are trying to achive the following architecture.
We are going to deploy one code base and different Database for each clients. (Which means one code base and 300-600 DB, based on client code should refers the appropriate DB)
What is the Good Solution to Achive One code base and Multiple Database Architecture?. Please Advise.
Our web application using the following things.
What is the Good Solution to Achive One code base and Multiple Database Architecture?
Entityframework (latest version)
Oct 17, 2013 12:31 AM|ignatandrei|LINK
What is the Good Solution to Achive One code base and Multiple Database Architecture?.
The multiple database have the same tables/fields/stored procs/views/and so on?
Oct 17, 2013 12:38 AM|Mayil_Gilli|LINK
Yes Everything is same.
Oct 17, 2013 02:42 AM|ignatandrei|LINK
Then create a DAL library to intercept calls to/from database. Inside DAL you can use EDMX - and replace later. Or you can try NHibernate. Just abstract tables.
Oct 17, 2013 09:38 AM|Illeris|LINK
A good solution could be a multi tenant web architecture.
You make the dbase connection in this case depending on the data in the user session, allowing to dynamically connect to the dbase the user has access to. You can do this for EF too.
Oct 18, 2013 11:45 AM|Mayil_Gilli|LINK
Got your point. I have one contraints here, if we add any new fields in any one of the customer then we have to add these fields all other DB's (i.e if we have 25 db;s then we have to run that script in all the DB's) because we are using entity framework
if we did not add these new field in other db's it throws the exception while connecting the different customer DB .
How Should we overcome this probelme? please advise.
We just want to add new fields only respective client DB.
Oct 21, 2013 08:23 AM|Illeris|LINK
New requirement, new answer :-)
It allows you to have a standard way for basic entity customisations, without requiring data scheme changes.