Witam
Przy pobieraniu kursora z procedurki oraklowej przez Entity stosowałem taki fragment kodu
string sqlQuery = @"BEGIN test.test(:windeks, :wnr, :io_cursor); END; ";
List<OracleParameter> oracleParameters = new List<OracleParameter>
{
new OracleParameter("wNazwa", wNazwa),
new OracleParameter("wnr", wNr),
new OracleParameter("io_cursor", OracleDbType.RefCursor, ParameterDirection.Output)
};
OracleDbContext context = new OracleDbContext();
using (DbConnection connection = context.Database.Connection)
{
connection.Open();
DbCommand command = connection.CreateCommand();
command.CommandText = sqlQuery;
command.Parameters.AddRange(oracleParameters.ToArray());
using (var reader = command.ExecuteReader())
{
return test= ((IObjectContextAdapter)context).ObjectContext.Translate<TEST>(reader).ToList();
}
}
I wszystko fajnie pięknie ale mam problem przy procedurce która w parametrach nie zwraca kursora tylko np dwa stringi, dla przykładu:
Procedure Zaloguj (param varchar2, outJeden OUT varchar, outDwa OUT vachar2) Is
BEGIN
outJeden := 'jeden';
outDwa := 'dwa';
END Zaloguj;
Czy ktoś miał taki przypadek i wie jak go rozwiązać?