I have taken over maintenance of a legacy application which manages projects each of which has a separate database (identical for the purposes of this question) there are currently > 1000 databases. In addition, these databases do not have table relationships defined, instead the relationships are determined using joins at the query level. Data is currently extracted using dynamic SQL and ADO.net.
I had hoped to use Entity Framework to provide a common data access layer, switching between databases using a different connection string as required
However I'm now thinking that due to the lack of table relationships (it is not even clear which are 1 to many, 1 to 1 etc.) EF may be more trouble than its worth, I will have troubles defining associations and navigation properties which will make the task of extracting data much more complex.
My question is, does that sound like a fair assessment? Or would Entity Framework be fine in the above scenario?