public static MyValue getnr(int id)
        {
            // 创建连接
            OracleConnection myConnection = new OracleConnection(Globals.DatabaseConnectionString);            try
            {
                // 打开连接
                myConnection.Open();
            }
            catch (Exception ex)
            {
                throw (ex);
            }            try
            {               
                OracleCommand myCommand = new OracleCommand(SP_getTEXT, myConnection);
                myCommand.CommandType = CommandType.StoredProcedure;
                OracleDataReader dr;
                
                myCommand.Parameters.Add("nrid", OracleType.Int32).Value = id;
                OracleParameter ret2 = myCommand.Parameters.Add("nrr", OracleType.Blob);
                ret2.Direction = ParameterDirection.Output;
                OracleParameter ret1 = myCommand.Parameters.Add("names", OracleType.VarChar,100);
                ret1.Direction = ParameterDirection.Output;
               
                OracleParameter ret = myCommand.Parameters.Add("ri_Error", OracleType.Int32);
                ret.Direction = ParameterDirection.Output;
                
                
                dr = myCommand.ExecuteReader();
                           
                           
                    MyValue myval = new MyValue();
                    byte[] aa;
                    aa = (byte[])ret2.Value;// 执行到这里就出现+ $exception {"无法将类型为“System.Data.OracleClient.OracleLob”的对象强制转换为类型“System.Byte[]”。"} System.Exception {System.InvalidCastException}

                    myval.name = myCommand.Parameters["names"].Value.ToString();
                
                   
                                return myval;            }
            catch (Exception ex)
            {
                throw (ex);
            }
            finally
            {
                myConnection.Close();
            }
        }问题在 程序里面了  我就是不知道怎么读取二进制对象 的表达式  那位大虾  帮忙看看