You need to be careful about changing app.config at runtime.
If you are testing in VS check which file is actually changed. app.config is copied on debug start.
Furthermore app.config is cached. so unless you
ConfigurationManager.RefreshSection("xxx");// config manager needs a kick...
you wont have much luck...
Suggest to google around on app.Config changes if still having issues.
But im Not sure if you can make EF will read runtime added named connection strings. If not, dynamic connection string may also be something you need to look at. EntityFramework code-first custom connection string and migrations