Foros del Web » Programación para mayores de 30 ;) » .NET »

Crear Objetos en Tiempo de Ejecución

Estas en el tema de Crear Objetos en Tiempo de Ejecución en el foro de .NET en Foros del Web. HOLA Al FORO: Se pueden crear objetos en tiempo de ejecución con una sentencia for ? es decir que quisiera si 5 objetos de tipo ...
  #1 (permalink)  
Antiguo 07/12/2005, 14:17
Avatar de rodri  
Fecha de Ingreso: febrero-2005
Mensajes: 406
Antigüedad: 19 años, 2 meses
Puntos: 2
Crear Objetos en Tiempo de Ejecución

HOLA Al FORO:

Se pueden crear objetos en tiempo de ejecución con una sentencia for
?

es decir que quisiera si 5 objetos de tipo string y quisiera que se llamen s1,s2,s3,s4,s5 respectivamente con un contador, se puede eso?

Gracias.
__________________
0.o Rodri
  #2 (permalink)  
Antiguo 07/12/2005, 18:55
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Tal como lo planteas, no, pero puedes usar colecciones del tipo clave/valor. Si usas .net 2 puedes usar estas colecciones con tipos definidos, para ganar rendimiento.
Código:
Hastable foo=new Hastable();
for (int i=0; i<5; i++){
  foo["s" + i] = "Bar" + i;
}
// Accedes al elemento s2
string bar = foo["s2"] + "";
Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #3 (permalink)  
Antiguo 08/12/2005, 07:30
Avatar de rodri  
Fecha de Ingreso: febrero-2005
Mensajes: 406
Antigüedad: 19 años, 2 meses
Puntos: 2
Alternativa

gracias por el tip, es buen método. Hoy estaba viendo una alternativa a este problema y es usando objetos Array. Especificamente, un SqlParameter[] se podria instanciar a cada una de sus posiciones con un bloque foreach, el problema es que el numero de posiciones del Array tendrá que ser fijo.

Código:
string query = "select * from Areas where area like @area or area in (@area2)";
            SqlCommand commando = new SqlCommand(query,(SqlConnection)connection);
            SqlParameter[] params = new SqlParameter[2];
            params[0] = new SqlParameter("@area", SqlDbType.NVarChar);
            params[1] = new SqlParameter("@area2", SqlDbType.NVarChar);
            params[0].Value = "%sque%";
            params[1].Value = "%B%";

           forach(SqlParameter p in params)
            {
                commando.Parameters.Add(p);
             }
// lo demas es ejecucion del Query
__________________
0.o Rodri
  #4 (permalink)  
Antiguo 08/12/2005, 08:07
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Hmm, no entiendo muy bien lo que quieres hacer...; cuéntanos cuál es tu _problema_.

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #5 (permalink)  
Antiguo 08/12/2005, 10:35
Avatar de rodri  
Fecha de Ingreso: febrero-2005
Mensajes: 406
Antigüedad: 19 años, 2 meses
Puntos: 2
lo que quiero hacer es generar objetos en mi programa de manera dinámica.

la mejor opcion para mi es usar objetos[] (array)

pero todavia no se como declarar objetos en un loop
__________________
0.o Rodri
  #6 (permalink)  
Antiguo 08/12/2005, 18:45
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Lo que no entiendo es para que quieres usar arrays de tipo SqlParameter... me descuadráste con tu penúltimo mensaje; la opción que te doy básicamente es la misma que quieres hacer.

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:51.