Drizin / Drizin/DapperQueryBuilder
oracle stored procedure returning cursor
- Vorherrschende Sprache
- C#
- Sterne
- 541
- Forks
- 49
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
I just found your package and I think it will make my code read a ton better. Right now, my code looks like the first code block. It works fine, but I would like to make my code look the second code block, but it can't seem to figure out how to set the returning cursor. I think I'm close in the second code block. As you can see, I'm stuck in an oracle database where every stored procedure returns a refcursor.
```
List data;
var connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (var connection = new OracleConnection(connStr))
{
var values = new OracleDynamicParameters();
values.Add("i_uic", Uic, OracleMappingType.Varchar2, ParameterDirection.Input);
values.Add("o_cur", dbType: OracleMappingType.RefCursor, direction: ParameterDirection.Output);
data = connection.Query("jcn_exports.get_work_notifications", values, commandType: CommandType.StoredProcedure).ToList();
}
```
```
List data;
var connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (var connection = new OracleConnection(connStr))
{
var ocur = new OracleParameter("o_cur", OracleDbType.RefCursor, ParameterDirection.Output);
var query = connection.SqlBuilder(
new InterpolatedSqlBuilderOptions(){DatabaseParameterSymbol = ":"},
$"jcn_exports.get_work_notifications({Uic}, {ocur})");
data = query.Query().ToList();
}
```
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne mit der im Issue gezeigten Verwendung von OracleDynamicParameters und SqlBuilder und verfolge anschließend, wie Parameter gespeicherter Prozeduren und refcursors behandelt werden. Ermittle, ob der Query-Builder-Pfad den Ausgabecursor binden kann, und überprüfe das Ergebnis anhand des vorhandenen funktionierenden Dapper-Beispiels; als erledigt gilt die Aufgabe, wenn der zweite Stil dieselben List-Daten für die Prozedur zurückgibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp, sql
- Bereich
- backend, databases
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100