title: Call Oracle stored procedure with a nested table from .NET
body: <p>Given the following table:</p>
  
  <pre><code>create table egyen (
    id number not null, 
    tajszam varchar2(9),
    nev varchar2(10),
    primary key(id)
  );
  </code></pre>
  
  <p>And the following package:</p>
  
  <pre><code>create or replace package pck_egyen is
    type egyentab is table of egyen%rowtype;
    procedure list(ret$ out egyentab);
  end pck_egyen;
  /
  create or replace package body pck_egyen is
    procedure list(ret$ out egyentab) is
    begin
      ret$ := egyentab();
      for rec in (select * from egyen) loop
        ret$.extend;
        ret$(ret$.count) := rec;
      end loop;
    end;
  end pck_egyen;
  /
  </code></pre>
  
  <p>Can someone provide me with a working .NET code using ODP.NET 11g that can call this stored procedure, without altering the table or the type or the package in any way? I have no idea how to set up an OracleParameter to support the pck_egyen.egyentab type...</p>
  
  <p>I haven't used UDT before, I gave it a shot but it won't recognize the type embedded in the package. Global types don't support %rowtype. Seems like I'm stuck. Originally I wanted to return ref cursors, works like a charm, but not through a dblink. Too many silly limitations.</p>