public int ExecuteOracleNonQuery(OracleCommand command, out OracleString rowid)
 {
     PrepareCommand(command);
     try
     {
         int result = command.ExecuteOracleNonQuery(out rowid);
     #if DEBUG
         DatabaseLog.WriteInfo(command);
     #endif
         return result;
     }
     catch (Exception e)
     {
         DatabaseLog.WriteError(e.Message, command);
         throw;
     }
 }
        public int ExecuteNonQueryStoredProcedure(string strProcedureName, OracleParameter[] arlParams, OracleConnection connection, OracleTransaction objTransaction)
        {
            int intResult = 0;

            using (OracleCommand command = new OracleCommand())
            {
                try
                {

                    command.CommandType = CommandType.StoredProcedure;
                    command.CommandText = strProcedureName;
                    command.Transaction = objTransaction;
                    command.Connection = connection;
                    if (arlParams != null)
                    {
                        for (int i = 0; i < arlParams.Length; i++)
                        {
                            if (arlParams[i].Value == null)
                            {
                                arlParams[i].Value = DBNull.Value;
                            }
                            command.Parameters.Add(arlParams[i]);//.ToString().Trim('@'), OracleType.VarChar).Value = arlParams[i].Value;
                        }
                    }

                    OracleString rowID = "1";

                    intResult = command.ExecuteOracleNonQuery(out rowID);
                    command.Parameters.Clear();
                    return intResult;

                }
                catch (Exception ex)
                {

                    throw (ex);
                }
            }
        }