【问题标题】:EntityFramework: Stored Procedure that returns a custom Poco instead of complex typeEntityFramework:返回自定义 Poco 而不是复杂类型的存储过程
【发布时间】:2019-05-05 05:39:12
【问题描述】:

我有一个自定义 POCO(我的项目中已经存在但未使用)。

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

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

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

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

有什么方法可以指定存储过程的返回类型为 MyPoco。

谢谢。

【问题讨论】:

    标签: entity-framework-4 mapping poco


    【解决方案1】:

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

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

    调用你的存储过程。

    【讨论】:

      【解决方案2】:

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

              var results =
                  this.Context.Database.SqlQuery<MyPoco>(
                      "spName @param1, @param2, @param3",
                      new SqlParameter("@param1", var1), 
                      new SqlParameter("@param2", var2),
                      new SqlParameter("@param3", var3));
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-08-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-10
        • 2016-09-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多