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

Problema de asignación con VB.net

Estas en el tema de Problema de asignación con VB.net en el foro de .NET en Foros del Web. Hola compañeros. A ver si explico bien mi problema a ver si me podéis ayudar. Veréis, he creado una clase para almacenar los datos de ...
  #1 (permalink)  
Antiguo 30/01/2008, 05:09
 
Fecha de Ingreso: junio-2007
Mensajes: 327
Antigüedad: 16 años, 10 meses
Puntos: 0
Problema de asignación con VB.net

Hola compañeros. A ver si explico bien mi problema a ver si me podéis ayudar.

Veréis, he creado una clase para almacenar los datos de un pedido. Esa clase tiene un montón de variables locales donde almaceno esos datos. Vamos a suponer que esa clase se llama Pedido.

Me ocurre que yo tengo un objeto del tipo "pedido" que está relleno, es decir todas sus variables internas con sus valores rellenos. Creo otro objeto de ese tipo, y lo igualo. Es decir hago que Pedido2 = Pedido1. El objetivo es que el pedido 2 tenga todos los datos del pedido1 pero se pueda modificar sus datos para hacer una serie de operaciones, pero no quiero perder los originales que seguirán almacenados en pedido1.

Pero me ocurre que al igualarlo, al luego modificar el pedido2, también modifica el pedido1. Esto debe ser porque lo interpreta como un puntero.

Mi pregunta es: ¿Cómo puedo modificar el pedido2, sin modificar el pedido1????


Gracias apañeros.
  #2 (permalink)  
Antiguo 30/01/2008, 09:29
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 7 meses
Puntos: 87
Re: Problema de asignación con VB.net

Pedido2=Pedido1.Clone();

Utilizando la interfaz de IClonable para tu clase Pedido

Saludos
Peterpay
  #3 (permalink)  
Antiguo 31/01/2008, 02:34
 
Fecha de Ingreso: junio-2007
Mensajes: 327
Antigüedad: 16 años, 10 meses
Puntos: 0
Re: Problema de asignación con VB.net

Gracias compi
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 14:35.