Как я могу получить доступ к процедуре Oracle, используя Oracle.ManagedDataAccess.EntityFramework?
У меня есть 2 таблицы в базе данных Oracle 11g: COURSES
и AUTHORS
. Я создал простую процедуру, подобную этой:
create or replace PROCEDURE GET_COURSE_DETAILS(OUT_COURSES OUT SYS_REFCURSOR)
AS
BEGIN
OPEN OUT_COURSES FOR
SELECT COURSEID, NAME, TITLE, DESCRIPTION, PRICE, LEVELSTRING, LEVELS
FROM COURSES C
INNER JOIN AUTHORS A ON C.AUTHORID = A.AUTHORID;
END;
Из простого консольного приложения я подключаюсь к этой БД с помощью Oracle.ManagedDataAccess.EntityFramework и запрашиваю процедуру следующим образом:
static void Main(string[] args)
{
RoomiEntities dbContext = new RoomiEntities();
var courses = dbContext.GET_COURSE_DETAILS();
}
Когда я вызываю функцию GET_COURSE_DETAILS
, она показывает эту ошибку в классе реализации DbContext:
Внутреннее исключение говорит
OracleException: ORA-06550: line 1, column 8:
PLS-00306: wrong number or types of arguments in call to 'GET_COURSE_DETAILS'
ORA-06550: line 1, column 8:
PL/SQL: Statement ignored
Не могли бы вы помочь мне решить эту проблему?