StringBuilder commandText = new StringBuilder("PACK_ASSIGNROOM.PROC_GETDORMSTUDENTINFO");
DataSet ds = new DataSet();
try
{
OracleConnection Conn = new OracleConnection(strConn);
OracleCommand DSCmd = new OracleCommand(commandText.ToString(),Conn);
DSCmd.CommandType = CommandType.StoredProcedure;
Conn.Open();

DSCmd.Parameters.Add("vEmpCode", OracleType.VarChar).Value = strEmpCode;
DSCmd.Parameters["vEmpCode"].Direction = ParameterDirection.Input;


DSCmd.Parameters.Add("querytype", OracleType.VarChar).Value = strQUERYTYPE;
DSCmd.Parameters["querytype"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("vstuno", OracleType.VarChar).Value = strVSTUNO;
DSCmd.Parameters["vstuno"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("vstuname", OracleType.VarChar).Value = strVSTUNAME;
DSCmd.Parameters["vstuname"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("vsex", OracleType.VarChar).Value = strVSEX;
DSCmd.Parameters["vsex"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("vspeciality", OracleType.VarChar).Value = strVSPECIALITY;
DSCmd.Parameters["vspeciality"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("vdept", OracleType.VarChar).Value = strVDEPT;
DSCmd.Parameters["vdept"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("venteryear", OracleType.VarChar).Value = strVENTERYEAR;
DSCmd.Parameters["venteryear"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("vgraduate", OracleType.VarChar).Value = strGraduate;
DSCmd.Parameters["vgraduate"].Direction = ParameterDirection.Input;

DSCmd.Parameters.Add("assigncursor", OracleType.Cursor);
DSCmd.Parameters["assigncursor"].Direction = ParameterDirection.Output;

DSCmd.Parameters.Add("result", OracleType.VarChar,4).Value = strRESULT;
DSCmd.Parameters["result"].Direction = ParameterDirection.Output;

DSCmd.Parameters.Add("returnmessage", OracleType.VarChar,8).Value = strRETURNMESSAGE;
DSCmd.Parameters["returnmessage"].Direction = ParameterDirection.Output;


OracleDataAdapter DBAdopter = new OracleDataAdapter(DSCmd);
DBAdopter.Fill(ds);
OutCursorValue = ds;

if(DSCmd.Parameters["result"].Value != DBNull.Value)
strRESULT = (String)DSCmd.Parameters["result"].Value;

if(DSCmd.Parameters["returnmessage"].Value != DBNull.Value)
strRETURNMESSAGE = (String)DSCmd.Parameters["returnmessage"].Value;

Conn.Close();

return 1;
}
catch(Exception ex)
{

throw new Exception(ex.Message);
}
为什么以上的代码执行存储过程没反映,等了20分钟也面没反映也不报错误,难道非连接调用存储过程我写的不对吗?请高手指点!!!!!!!!!!!!!!!!!!!!