Supongamos que tengo una clase base llamada Visitor, y tiene 2 subclase Subscriber y NonSubscriber.¿Cómo cambiar la clase de un objeto dinámicamente en C#?
Al principio es un visitante a reflexionar a partir de un no suscriptores, es decir
NonSubscriber mary = new NonSubscriber();
Luego, más tarde en este "mary" suscrito a algunos servicios, y quiero cambiar el tipo de "María" al suscriptor.
¿Cuál es la forma convencional de hacerlo?
usted, sin embargo, probablemente pueda hacer uso del patrón "Estado" como se describe en el GoF. ¡pero no es necesario cambiar el tipo de clase/objeto! – cruizer
incluso con un idioma dinámico CAMBIAR EL TIPO DE OBJETO no siempre es posible. – TomTom
Muchas gracias por sugerir el patrón "Estado" ... Lo que trato de hacer aquí es hacer uso de la creación de subclases y la herencia de modo que cada vez que se represente la página, se llame a un método derivado apropiado. Por ejemplo, para los no suscriptores, quiero mostrar el enlace "Unirse ahora". mientras que para los suscriptores quiero mostrar el enlace a "Especial de hoy", y el resto de la página es común para todos los visitantes. – Chris