System.Byte[]

11/08/2005 - 09:45 por RedComm | Informe spam
El problema es el siguiente:
Utilizo en mi aplicacion mysql y C#.
Tengo un campo observaciones en la tabla de clientes, cuya declaracion en
mysql
es varchar(2000).
Mediante vistas recojo listados generales, tales como el de todos los
clientes...
Pues bien, cargo un DataSet con los datos de la vista y al mostrar el campo
Observaciones en un textbox me sale el dichoso "System.Byte[]".
Intento solucionarlo o buscar solucion y ninguna me funciona.
Lo mas logico seria algo asi :

Byte[] bytes=(Byte[])(row[5]);
string campo = "";
for(int i = 0;i<bytes.Length;i++)
campo += Convert.ToChar(bytes.GetValue(i)).ToString();

pero tampoco funciona.
En cambio al acceder de la siguiente forma a un campo de bd :

CommandParam = new MySQLCommand("Select param_list from mysql.proc where
(name='" + Procedure + "')",mySqlConn);
Array valor = (Array) CommandParam.ExecuteScalar();
string campo = "";
for(int i = 0;i<valor.Length;i++)
campo += Convert.ToChar(valor.GetValue(i)).ToString();

si me recoge los datos y puedo transformarlo a string

Mi opinion en que el objeto DataRow no es capaz de entender el tipo de dato
que recoge creyendo que es cadena, en cambio el metodo ExecuteScalar ya nos
devuelve el campo segun el tipo de este( Byte[] en este caso)

Agradeceria muchisimo alguna ayuda, pues llevo atrancado un par de dias y no
quiero dejarlo
Un saludo
Javier Martinez Rojo

Preguntas similare

Leer las respuestas

#1 RedComm
11/08/2005 - 11:36 | Informe spam
Ya esta solucionado !! ,
el problema viene desde el driver para la conexion a MySql .
Yo utilizaba el famoso MySqlDriverCS el cual tiene entre otros este problema
(no devuelve los tipos de datos correctos),aunque tambien tenia instalado el
MySql Connector .NET,pero no hacia referencia a sus objetos,sino a los del
MySqlDriverCS...
Asi que quite la referencia de este,puse la del MySql Connector .NET
(MySql.Data.dll) y cambie los nombres de los objetos.
Ya no tuve que formatear nada, y me quite de encima el "System.Byte[]" de la
discordia
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida