Ok, så efter meget mere gravearbejde fandt jeg løsningen.
Den originale kode brugte ExecuteReader. Jeg har ændret det til at køre ExecuteNonQuery.
Jeg sender de samme parametre og typer ind, som jeg gjorde (2 inputs, 2 outputs, hvoraf den ene er en streng, en en refcursor).
Når ExecuteNonQuery kører, kan jeg se værdien af den 3. param (strengen). så gør jeg følgende:
OracleDataReader dr = ((OracleRefCursor)pRefcursor.Value).GetDataReader();
Så kan jeg lave mine sædvanlige sløjfer med dr! Glade dage!