"POCO" means that the structure does not create unnecessary or contradictory restrictions for entity objects - there is no need to use a code generator, there is no need to extend the base class provided by the infrastructure, annotate properties widely or have for the most part, write different code than the classes would be, always stored in memory. This remains a concern for storing data outside the model classes and reduces cognitive overhead.
Compare POCO definitions from NHibernate or EF Code First, with Visual Studio code generated for EF without First code, ask yourself which one do you prefer to read and maintain. (For example, when you write a new code base.)
source share