What if your application must work with an existing database, perhaps with 300 tables or more? While you may want to write and maintain your entity model in Code First style, you're not looking forward to writing 300 entity classes by hand. Fortunately, you don't have to. You can jump-start your code base by generating the initial classes from the database schema and then continue Code First from there. We call this approach "Code Second".