Esto no es posible en EF 1.0
La razón es que EF tendrá en cuenta los valores de procedimientos almacenados para ser sólo valores y no properites de navegación.
Por ejemplo, la entidad Empleado tiene varias entidades de Orden. En Order tiene una propiedad llamada EmployeeID. Cuando la base de datos llena su consulta utilizando declaraciones include, crea 1 consulta de proyección en SQL para completar todos los datos de pedido que un empleado en particular podría tener.
Así que si he dicho
var = context.Employees.Include empleado ("Ordenes") Donde (e => e.ID == 1) .First (.);
var orders = employee.Orders;
El SQL para la primera consulta va a crear una consulta de proyección que contendrá órdenes donde el EmployeeID = 1.
Ahora, cuando el procedimiento almacenado se ejecuta, esto puede hacer cualquier código detrás de las escenas (en otras palabras, puede volver cualquier conjunto de datos). Entonces, cuando SQL ejecuta el procedimiento almacenado, solo ejecuta el código en ese procedimiento almacenado y no tiene conocimiento de que EmployeeID en Order es un FK de esa propiedad. Además, si su procedimiento almacenado devuelve una entidad Empleado, entonces está viendo otro escenario en el que ni siquiera tendrá un ID de pedido para seguir.
Para solucionar esto, puede configurar su consulta en EF usando instrucciones Include que pueden reflejar cualquier procedimiento almacenado. Si usa la combinación adecuada de sentencias .Select e .Include, debería poder hacer lo mismo.
un duplicado de http://stackoverflow.com/questions/1035677/using-a-stored-procedure-in-entity-framework-how-do-i-get-the-the-entity-to-have – user48545