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

Matriz de clase

Estas en el tema de Matriz de clase en el foro de .NET en Foros del Web. Hola a todos. Estoy intetando hacer un programa en vb.net. que consiga lo siguiente Tengo varios Productos que pueden tener 1 o varias tallas que ...
  #1 (permalink)  
Antiguo 27/03/2007, 11:45
Avatar de Nizam  
Fecha de Ingreso: abril-2002
Ubicación: Madrid
Mensajes: 78
Antigüedad: 22 años, 1 mes
Puntos: 0
Sonrisa Matriz de clase

Hola a todos.

Estoy intetando hacer un programa en vb.net. que consiga lo siguiente

Tengo varios Productos que pueden tener 1 o varias tallas que a su vez pueden tener 1 o varios colores y de cada color hay x cantidad.

La idea esta en que obtengo de una base de datos esos productos:

Por ejemplo:
Producto Zapatilla deporte
talla 23 color azul (12)
color blanco (10)
talla
color rojo (8)
color azul (22)
....
....

Quiero cargar los datos en cada clase de tal forma que luego para acceder a ellas pueda poner Producto(0).Talla(0).Color(0).cantidad y me devuelva 12

Me creo 3 clases.

La clase Producto
La clase Talla
La clase Color

Si hago Dim p as new Producto, sólo puedo almacenar un producto.
Si hago Dim p() as Producto, cuando redimensiono la variable e intento insertar un dato me dice que no he instanciado el objeto.

¿Como puedo hacer para poder almacenar mas de un producto en esa clase y luego recogerlo por un indice o similar?.

Luego está el tema de por cada producto, insertar las tallas y para cada talla los colores y el valor. Que no tengo ni idea de por donde cogerlo.

No se si en la clase Producto me debo crear un metodo que sea añadir_talla que me añada en un array?¿? (vuelvo al problema inicial) la talla recogida en la base de datos (haciendo algo asi p(0).añadir_talla=23) y luego por cada talla añadir en la clase tramo un metodo que sea añadir_color poniendo p(0).tramo(0).añadir_color="rojo" para luego poder poner p(0).tramo(0).ambito(0).cantidad=12

Esto implicaria que en cada clase debo tener una variable que instancie a la siguiente, es decir en mi clase Producto debo tener dim ttalla() as new talla

uff...

Acepto sugerencias, ideas, páginas con ejemplos, libros

Muchas gracias.
  #2 (permalink)  
Antiguo 27/03/2007, 11:53
Avatar de reel  
Fecha de Ingreso: febrero-2004
Ubicación: Managua, Nicaragua
Mensajes: 496
Antigüedad: 20 años, 3 meses
Puntos: 1
Re: Matriz de clase

Si estás usando 2005 puede, te recomiendo que leas sobre las colecciones genéricas (Generics), si usas 2003 tendras que usa las collecciones anteriores.

En fin, tu solución se encuentra en el uso de colecciones.

Saludes
__________________
Leer es Saber, REEL.
Mi Blog
  #3 (permalink)  
Antiguo 02/04/2007, 03:14
Avatar de Nizam  
Fecha de Ingreso: abril-2002
Ubicación: Madrid
Mensajes: 78
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: Matriz de clase

Muchas gracias por responder, tan rápido!!!

He investigado, he visto las coleccione, me he asustado
he seguido investigando y lo he resuelto de la siguiente manera:

Vb.Net 2003

Me he creado las tres clases

Clase Producto
Variables
arrTalla as ArrayList (Aquí guardare todas las tallas de ese producto)
TTalla as Talla
Constructor
TTalla = new Talla
Metodos:
.....
Añadir_Talla
Aquí añado la Talla al producto
Añadir_Color
Llama al metodo Añadir_Color de la Clase Talla
Buscar
Busca el producto pasandole el id
.....
Clase Talla
Variables
arrTalla as ArrayList (Aquí guardare todos los colores de esa Talla)
CColor as Color
Añadir_Color
Añado el color a la Talla.
Busca
Busca la talla pasandole el id

Clase Color
Sólo tiene las propiedades caracteristicas color como descripcion, id....

Quizás no sea del todo correcto, pero funciona perfectamete.

Un saludo y gracias.
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 18:25.