Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ===++===
- //
- // OrtizOL
- //
- // ===--===
- /*============================================================
- //
- // Clase: IntercambioDatosAppDomains.cs
- //
- // Propósito: Demostración del intercambio de datos entre
- // dominios de aplicación.
- //
- ============================================================*/
- using System;
- using System.Reflection;
- using System.Collections;
- namespace Recetas.Cap03
- {
- internal class ModificadorContenido
- {
- public ModificadorContenido()
- {
- // Obtiene la lista de las propiedades del dominio:
- ArrayList lista = (ArrayList) AppDomain.CurrentDomain.GetData("Programas");
- // Agrega un nuevo elemento a la lista:
- lista.Add("OrtizOL - El Empleado");
- }
- }
- internal class IntercambioDatosAppDomains
- {
- public static void Main()
- {
- // Creación de un nuevo dominio de aplicación:
- AppDomain nuevoAppDomain = AppDomain.CreateDomain("NuevoDominio");
- // Creación de la lista con nombres de programas:
- ArrayList listaProgramas = new ArrayList();
- listaProgramas.Add("OrtizOL - Fundamentos de Electrónica Digital");
- listaProgramas.Add("OrtizOL - Easy YouTube Video Downloader");
- listaProgramas.Add("OrtizOL - El Triángulo");
- listaProgramas.Add("OrtizOL - Simulador Bancario");
- // Agregamos la instancia `ArrayList` en las propiedades
- // del nuevo dominio `nuevoAppDomain`:
- nuevoAppDomain.SetData("Programas", listaProgramas);
- // Creamos instancia desde el dominio nuevo:
- nuevoAppDomain.CreateInstance("IntercambioDatosAppDomains", "Recetas.Cap03.ModificadorContenido");
- // Visualización del contenido de la lista:
- Console.WriteLine("\nContenido de `listaProgramas`:");
- foreach (string programa in listaProgramas)
- {
- Console.WriteLine("\t{0}", programa);
- }
- Console.WriteLine("\nContenido de `nuevoAppDomain.GetData(\"Programas\")`:");
- foreach (string programa in (ArrayList) nuevoAppDomain.GetData("Programas"))
- {
- Console.WriteLine("\t{0}", programa);
- }
- Console.WriteLine();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement