Ok, also nach viel mehr Graben, fand ich die Lösung.
Der ursprüngliche Code verwendete ExecuteReader. Ich habe es geändert, um ExecuteNonQuery auszuführen.
Ich übergebe die gleichen Parameter und Typen wie ich (2 Eingänge, 2 Ausgänge, einer davon ist ein String, einer ein Refcursor).
Wenn ExecuteNonQuery läuft, kann ich den Wert des 3. Parameters (die Zeichenfolge) sehen. dann mache ich folgendes:
OracleDataReader dr = ((OracleRefCursor)pRefcursor.Value).GetDataReader();
Dann kann ich meine üblichen Loops mit dem dr! Frohe Tage!