Q:

Dudas con entity framework y las propiedades virtuales

ojala alguien me pudiera ayudar despejando algunas dudas que tengo con respecto a entity framewrok
1.-Al generar un modelo desde la base de datos, se genera el mapeo de las entidades pero se crean unas propiedades con la palabra reservada virtual....este virtual que es y como funciona en entity?..
2.- Al generar el modelo algunas de esas entidades virtuales se generan dos veces por que pasa esto?
Muchas gracias!

A:

El virtual permite que la libreria de entity framework sobreescriba la funcionalidad interponiendo un proxy, por ejemplo, para permitir que funcione el lazy load de las relaciones de navegacion entre las entidades.
Cargar entidades relacionadas 
En el articulo comenta:

la carga diferida (lazy load) se logra mediante la creación de instancias de tipos proxy derivado y, a continuación, reemplazar propiedades virtuales para agregar el enlace de la carga

Por lo general si se duplica la entidad puede deberse a una incorrecta definicion en el mapping de la relacione entre las entidades, puede que se indique propiedades de foreign key que no representan la relacion

