title: Call oracle Stored Procedure with EF fail
body: <p>I have an oracle store procedure which take 2 strings and a date in input parametter and which give a ref cursor as output :</p>
  
  <pre><code>CREATE OR REPLACE PROCEDURE SCHEMA.MYPROSTO (
     pPl    IN     VARCHAR2, -- Comma (;) separated
     pTy    IN     VARCHAR2,-- Comma (;) separated
     pDate     IN     mytable.mydate%TYPE,
     pCursor      OUT sys_refcursor)
  IS
     .....
     sSQL      VARCHAR2 (3000);
  BEGIN
  
     -- making SQL Order
     sSQL := 'SELECT TO_CHAR (v.date_c........
  
     ......
  
  
     OPEN pCursor FOR sSQL;
  
  END MYPROSTO;
  </code></pre>
  
  <p>The output cursor return a set of 3 string cells rows.</p>
  
  <p>I imported this stored procedure in my entity framework model, with this in the .config file :</p>
  
  <pre><code>&lt;oracle.manageddataaccess.client&gt;
  &lt;version number="*"&gt;
    &lt;implicitRefCursor&gt;
      &lt;storedProcedure schema="SCHEMA" name="MYPROSTO"&gt;
        &lt;refCursor name="PCURSOR"&gt;
          &lt;bindInfo mode="Output"/&gt;
          &lt;metadata columnOrdinal="0" columnName="YEAR" providerType="Varchar2" allowDBNull="true" nativeDataType="Varchar2"/&gt;
          &lt;metadata columnOrdinal="1" columnName="MONTH" providerType="Varchar2" allowDBNull="true" nativeDataType="Varchar2"/&gt;
          &lt;metadata columnOrdinal="2" columnName="COUNT" providerType="Varchar2" allowDBNull="true" nativeDataType="Varchar2"/&gt;
        &lt;/refCursor&gt;
      &lt;/storedProcedure&gt;
    &lt;/implicitRefCursor&gt;
  &lt;/version&gt;
  &lt;/oracle.manageddataaccess.client&gt;
  </code></pre>
  
  <p>The function import wizzard created a result object and generated an access function :</p>
  
  <pre><code>public virtual ObjectResult&lt;MYPROSTO_Result&gt; MYPROSTO (string pPL, string pTY, Nullable&lt;System.DateTime&gt; pDATE)
  {
      var pPLParameter = pPL!= null ?
          new ObjectParameter("PPL", pPL) :
          new ObjectParameter("PPL", typeof(string));
  
      var pTYParameter = pTY!= null ?
          new ObjectParameter("PTY", pTY) :
          new ObjectParameter("PTY", typeof(string));
  
      var pDATEParameter = pDATE.HasValue ?
          new ObjectParameter("PDATE", pDATE) :
          new ObjectParameter("PDATE", typeof(System.DateTime));
  
      return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction&lt;MYPROSTO_Result&gt;("MYPROSTO", pPLParameter, pTYParameter, pDATEParameter);
  }
  </code></pre>
  
  <p>However, the call to this function raise an exception (<strong>System.Data.Entity.Core.EntityCommandExecutionException</strong>) on the last line :</p>
  
  <pre><code>ORA-06550: Ligne 1, colonne 8 : PLS-00306: wrong number or types of arguments in call to 'MYPROSTO'
  ORA-06550: Ligne 1, colonne 8 : PL/SQL: Statement ignored
  </code></pre>
  
  <p>I don't see why it fail</p>