相关疑难解决方法(0)

如何使用Entity Framework在oracle包中调用存储过程?

我在oracle 11g中有一个包如下:

CREATE OR REPLACE PACKAGE "HRS.PKG_TRAINING_SP" as
TYPE T_CURSOR IS REF CURSOR;

procedure GETPERSONNELTRAINIGLIST(
        personnel_Id_in in string,
        base_date_in in string,
        is_current_in in number,
        lst OUT T_CURSOR );
end;
Run Code Online (Sandbox Code Playgroud)

如何GETPERSONNELTRAINIGLIST使用Entity Framework(代码优先)执行上述过程package()?

注意:我正在使用Entity Framwork 6.0(代码优先)和devart EF Providerfor Oracle.

更新: 我使用以下代码:

var param1 = new OracleParameter("personnel_Id_in", OracleDbType.VarChar, "c5eb5589-8fee-47b6-85ad-261a0307cc16", ParameterDirection.Input);
var param2 = new OracleParameter("base_date_in", OracleDbType.VarChar, "1112", ParameterDirection.Input);
var param3 = new OracleParameter("is_current_in", OracleDbType.Number, 1, ParameterDirection.Input);

var ATests =
    db.Database.SqlQuery<ATest>(
    "BEGIN PKG_TRAINING_SP.GETPERSONNELTRAINIGLIST(:personnel_Id_in, :base_date_in, :is_current_in); end;", 
    param1,  param2, param3).ToList();
Run Code Online (Sandbox Code Playgroud)

但低于错误: …

c# oracle entity-framework devart oracle11g

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×1

devart ×1

entity-framework ×1

oracle ×1

oracle11g ×1