EntityFramework:存储过程,返回自定义Poco而不是复杂类型

时间:2011-12-08 15:18:22

标签: entity-framework-4 mapping poco

我有一个自定义POCO(已在我的项目中使用过。)

public class MyPoco()
{
     public string MyPocoName {get; set;}
     public string MyPocoParentName {get; set;}
}

我还有一个存储过程,它返回(MyPocoName,MyPocoParentName)值的列表。

我无法在功能导入向导中将MyPoco设置为此过程的返回类型。

我不想创建与MyPoco具有相同比例的新自定义类型。

是否有任何方法可以将存储过程的返回类型指定为MyPoco。

感谢。

2 个答案:

答案 0 :(得分:8)

是的,有一种方法但你不能使用函数导入(在这种情况下,向模型中添加存储过程没有意义)。使用:

var data = objectContext.ExecuteStoreQuery<MyPoco>("spName", SqlParams);

调用存储过程。

答案 1 :(得分:1)

我必须在spName之后添加param列表:

p = 1.30 * (Re**(-1.63)) * (svel**2) * ht / dhyd / void / densm / 1000.0 * ptes