Возврат ссылки на курсор из хранимой процедуры oracle с использованием DAAB из MS EntLib 4.1

Можно ли получить курсор ref из хранимой процедуры Oracle с помощью DAAB из Microsoft Enterprise Library 4.1?

2 ответа

Решение

Да, конечно, вы можете.

PROCEDURE load_all (
    p_row_start          IN     number,
    p_page_size          IN     number,

    cur_out              OUT    sys_refcursor
) AS
...

И на стороне C#:

DbCommand cmd = db.GetStoredProcCommand("my_package.load_all", paramValues))
IDataReader r = db.ExecuteReader(cmd);
...

Параметр RefCursor должен называться cur_out.

DAAB не дает нам возможности получить Ref Refsor. Проблема заключается в том, что System.Data.Common не имеет типа DbType.Cursor или DbType.RefCursor. Таким образом, в исходном коде DAAB 4.1 требуется небольшая настройка. Пожалуйста, следуйте инструкциям, приведенным в следующей ссылке. Это работает как кусок пирога.

http://www.codeproject.com/KB/database/DAAB_On_ODPNet.aspx

Другие вопросы по тегам