My team and I are going to start a new project, and we are at the stage of studying and testing some new (or not very new) technologies.
Until today, we have used classic ADO with DBDataReaders, a proxy for lazy loading and, in some cases, DataTables.
The team consists of 3 developers and one database designer. Our projects consist of at least 130 tables.
Our new project has potential for growth, so we expect 100 tables.
I read and did some simple tests with EF5 for the past 2 days, and I still cannot decide if we should use it.
- Usually we divide a large project into many βmodularβ projects, which allows us to work faster and better under source control. Will we use one big "edmx" for the whole database?
- Since we have a database constructor, I suspect CodeFirst is not an option. So is it worth using EF using the Database First approach?
- If we use the first approach to the database, is EF smart enough to correctly identify all relationships and be ready to use without additional configuration by me? (Due to additional configurations, I mean that I will have to write DataAnnotations or use Obveride DbContext)
- Personally, I consider myself very confident in creating a database with sql. The only annoyance I have is when I have to update all the select, delete, update, insert scripts when the entity is changed in my list classes. EF will take care of this for me, but apart from this, I am starting to believe that it will slow down productivity and ultimately slow down my production, since we are not familiar with it.
Do you think THIS HAPPENED THIS?
* With the exception of DataAnnotations and Obveride DbContext, does anyone use simple T4 templates to create tables (schemas)?
source share