entity-framework - sqlquery - mapear stored procedure entity framework
Entity Framework 6 No se puede construir después de agregar procedimientos almacenados al modelo de datos (3)
Acabo de descargar Entity Framework 6 y creé un nuevo proyecto para probarlo. Actualmente usamos EF 5.
Después de agregar todas mis tablas y procedimientos almacenados, intenté construir el proyecto pero recibo errores:
El valor del tipo ''System.Data.Objects.ObjectParameter'' no puede convertirse a ''System.Data.Entity.Core.Objects.ObjectParameter''.
El valor del tipo ''System.Data.Entity.Core.Objects.ObjectResult (Of DataLibrary.MyStoredProc_Result)'' no se puede convertir a ''System.Data.Objects.ObjectResult (Of DataLibrary.MyStoredProc_Result)''.
No puedo entender por qué esto no funcionará fuera de la caja
EF 5 tenía tales problemas.
Estoy usando VS 2012. .Net 4.5 Vb.net (también intenté con un proyecto de C # ... mismo problema)
¿Algunas ideas?
EDITAR :
La respuesta fue instalar EF6 Tools para VS 2012. No sabía que tenía que hacer esto porque creía que se había instalado cuando agregué el paquete de Entity Framework.
Puede superar este escenario reemplazando:
using System.Data.Objects;
Con:
using System.Data.Entity.Core.Objects;
Es posible que deba actualizar las instrucciones de using
en sus plantillas T4, como su archivo Context.tt, para que los archivos generados automáticamente continúen funcionando al volver a generar.
antes de
Después
Supongo que está utilizando herramientas EF de VS2012 que todavía están vinculadas a la distribución EF original (parte de .NET framework). EF6 utiliza distribución fuera de banda y no funciona con herramientas anteriores; esa es la razón por la cual esos tipos tienen poco espacio de nombres y no se pueden convertir de uno a otro.
La solución debería ser la descarga e instalación de herramientas EF6 para VS2012 o el uso de VS2013 donde se deberían incluir herramientas.
Usé lo que "Pauly Glott", que funcionó para mí. Para obtener información un poco más detallada, consulte mi publicación en los foros de Microsoft y la respuesta.