如何一般执行存储过程?我试过了:
_context.Set<TEntity>();
我想避免使用嵌入式SQL,例如:
context.Database.SqlQuery<TEntity>(storedProcedureName);
但是,因为存储过程是通过Function而不是Type访问的,所以这不起作用。我也尝试通过函数映射创建/访问。返回结果的复杂类型存在,但这不能用于获取结果本身。
我是否需要代表或在某处获得支持?
要清楚,我希望创造类似......的东西。
public IEnumerable<TEntityResult> ReadSpAll<TEntity,TEntityResult>(IEnumerable<SqlParameter> sqlParameters)
其中TEntity
是存储过程,TEntityResult
是复杂的返回类型
答案 0 :(得分:0)
请参阅“使用导入函数映射存储过程” @ http://msdn.microsoft.com/en-us/data/gg699321.aspx
代码
var context = new AWEntities();
ObjectResult<OrderDetail> orderDetailEnumerable = context.GetDetailsForOrder(71796);
List<OrderDetail> details = orderDetailEnumerable.ToList();