0

手続き名:AGENCY_STATE_REPORT

入力:

(frm_date date, 
 to_date1 date)

出力;

p_cur out SYS_REFCURSOR

私のC#コード:

public DataTable retdt1(string frmdate,string todate)
{
    try
    {
        // Logfile("retdt", query);
        con.Open();

        if (con.State == ConnectionState.Open)
        {
            objCmd = new OracleCommand();
            objCmd.CommandText = "AGENCY_STATE_REPORT ";
            objCmd.CommandType = CommandType.StoredProcedure;

            objCmd.Parameters.Add("@frm_date",OracleDbType.Date).Value=frmdate;
            objCmd.Parameters.Add("to_date1", OracleDbType.Date).Value = todate;
            objCmd.Parameters["@ p_cur"].Direction = ParameterDirection.Output;

            dap = new OracleDataAdapter(objCmd);
            dt = new DataTable();

            dap.Fill(dt);

            if (dt.Rows.Count > 0)
            {
                return dt;
            }
        }

        return null;
    }
    catch (Exception ex)
    {
        HttpContext.Current.Response.Write(ex.Message);
        throw ex;
    }
    finally
    {
        if (con != null)
            if (con.State != ConnectionState.Closed)
                con.Close();

        if (objCmd != null)
        {
            objCmd.Dispose();
            dap.Dispose();
            dt.Dispose();
        }
    }
}

コードが間違っていることはわかっていますが、これら 2 つの入力パラメーターをストアド プロシージャに送信する方法を教えてください。

4

1 に答える 1