He reducido esto a un problema entre Code First y Database first EF, pero no estoy seguro de cómo solucionarlo. Trataré de ser lo más claro posible, pero, sinceramente, me estoy perdiendo parte de la comprensión aquí. Esto es Entity Framework 4.4
Heredé un proyecto en el que se utilizó Entity Framework, pero muchos de los archivos reales se eliminaron sin una forma real de volver atrás. Volví a agregar EF (la base de datos primero) y repliqué una configuración T4 sobre la que se construyó el proyecto. Generaba versiones de código de todos los modelos de base de datos y un archivo de código DBContext.
Si mi cadena de conexión parece una cadena de conexión .NET "normal", obtengo un error sobre una columna no válida. El nombre "ProcessState_ID" no existe. ProcessState_ID no está en la base del código en absoluto, no está en el archivo EDMX ni nada. Esto parece ser una conversión EF automática en la consulta.
Cuando hago que la cadena de conexión coincida con el modelo de Entity Framework, funciona bien.
Ahora, al intentar hacer coincidir el código anterior con Entity Framework, me gustaría mantener la cadena de conexión .NET "normal".
Entonces tengo dos preguntas aquí: 1. ¿Cuál es una buena manera de pasar de una cadena de conexión normal a una cadena de conexión EF en el código? 2. ¿Hay otra solución aquí que no veo para detener el error de nombre de columna no válido?
public virtual Person Person { get; }