ODP.NET Как передать массив строк в хранимую процедуру Oracle?
Там много вопросов изапутанным документы по теме, но пока не повезло.
У меня есть следующая хранимая процедура PL / SQL;
PROCEDURE PS_test(
Liste1 Listcar,
Liste2 Listcar,
P_CURS_MESSAGE out CURSOR_REF_TYP
)
Где типListcar
является следующим:
ТИП Listcar IS VARRAY (100) ИЗ VARCHAR2 (50);
Вот что я пытаюсь до сих пор:
string[] list = { "name1", "name1" };
OracleParameter oParam = (OracleParameter)myOracleCommand.CreateParameter();
oParam.ParameterName = "Liste1";
oParam.UdtTypeName = "LISTCAR";
oParam.Value = list;
oParam.Direction = ParameterDirection.Input;
myOracleCommand.Parameters.Add(oParam);
Со следующей ошибкой в присвоении значения:
Value does not fall within the expected range.
Попытался использовать тип varchr2, установить ArrayBindSize и так далее, но пока не повезло.
Я думаю, интерфейсIOracleArrayTypeFactory
может где-то сыграть свою роль, но как?