CONVERTIR OBJECT a OBJECT[]

18/05/2005 - 22:31 por Jose Fernandez | Informe spam
Hola

tengo la siguiente funcion

void CargarListas(CheckBoxList lista,string tabla,string filtro,
System.Object valor)
{
Voluntarios.Reglas.Entidad Ent=new Voluntarios.Reglas.Entidad(tabla);
DataTable oCom=Ent.TraerFiltrado(filtro).Tables[0];
lista.DataSource=oCom;
lista.DataTextField="Descripcion";
lista.DataValueField="Id";
lista.RepeatColumns=3;
lista.DataBind();
object[] valor2=(System.Collections.IList)valor;
<<
for(int i=0;i<valor2.Length;i++)
{
ListItem oLi=(lista.Items.FindByValue(valor2[i].ToString()));
oLi.Selected=true;
}
Ent.Dispose();
}

Como pueden ver, tengo un parametro de la funcion que es tipo object. Como
pueden ver, necesito pasar ese object (que es un array) a un array de
objects... NO SE COMO HACERLO. ya he probado casteando, convirtiendo, de
todo y nada...

Alguien que sepa como hacerlo?

saludos
 

Leer las respuestas

#1 Carlos García-Carazo
19/05/2005 - 11:59 | Informe spam
Tal vez el problema sea que al llamar a la función se convierte el tipo
Array al tipo object (del que hereda) a través de la variable local 'valor',
y ya dentro de la función no puedes reconvertir object al tipo Array
puesto que estamos hablando de una nueva variable local definida como
un tipo simple.

¿has probado a hacer

void CargarListas(CheckBoxList lista, string tabla, string filtro, object [] valor)

???

Si funciona puedes eliminar la variable valor2 y trabajar directamente con 'valor'.

"Jose Fernandez" escribió en el mensaje news:e49Vai%
Hola

tengo la siguiente funcion

void CargarListas(CheckBoxList lista,string tabla,string filtro,
System.Object valor)
{
Voluntarios.Reglas.Entidad Ent=new Voluntarios.Reglas.Entidad(tabla);
DataTable oCom=Ent.TraerFiltrado(filtro).Tables[0];
lista.DataSource=oCom;
lista.DataTextField="Descripcion";
lista.DataValueField="Id";
lista.RepeatColumns=3;
lista.DataBind();
object[] valor2=(System.Collections.IList)valor;
<<
for(int i=0;i<valor2.Length;i++)
{
ListItem oLi=(lista.Items.FindByValue(valor2[i].ToString()));
oLi.Selected=true;
}
Ent.Dispose();
}

Como pueden ver, tengo un parametro de la funcion que es tipo object. Como
pueden ver, necesito pasar ese object (que es un array) a un array de
objects... NO SE COMO HACERLO. ya he probado casteando, convirtiendo, de
todo y nada...

Alguien que sepa como hacerlo?

saludos


Preguntas similares