Example #1
0
        private static DynamicMetaObject DynamicXmlReaderForSingleElement(XElement elem)
        {
            var dynamicXmlReader = new DynamicXmlReaderDmoVersion(elem);
            var target           = Expression.Constant(dynamicXmlReader);

            return(new DynamicXmlMetaObject(target, BindingRestrictions.GetTypeRestriction(target, typeof(DynamicXmlReaderDmoVersion)).Merge(BindingRestrictions.GetInstanceRestriction(target, dynamicXmlReader)), elem));
        }
Example #2
0
        static void Main(string[] args)
        {
            //var numeros = Enumerable.Range(1,1000);

            ////var pares = from n in numeros
            ////            where n % 2 == 0
            ////            select n * n;
            //var pares = numeros.Where(n => n % 2 == 0).ToArray();
            //foreach (var n in pares)
            //{
            //    Console.WriteLine(n);
            //}
            //Console.ReadKey();
            //dynamic obj = new ExpandoObject();
            //obj.Saludo = "Hola a todos los valientes asistentes al Prepedeutico de c#";
            //obj.Evento = null;
            //obj.Evento += (Action<object,EventArgs>)((o, e) => Console.WriteLine("Saludos desde el manejador de eventos"));
            //obj.Metodo = (Action<string>)((x) =>
            //    {
            //        Console.WriteLine(x);
            //        obj.Evento(obj, EventArgs.Empty);
            //    });
            //obj.Metodo("buuuu");
            //foreach (var item in obj)
            //{
            //    Console.WriteLine(item);
            //}
            //Console.ReadKey();

            var     doc   = XDocument.Load("xml1.xml");
            dynamic xml   = new DynamicXmlReaderDmoVersion(doc);
            var     valor = xml.LLave.Item.Valor;

            Console.WriteLine(valor);

            Console.ReadKey();
        }
Example #3
0
        static void Main(string[] args)
        {
            //var numeros = Enumerable.Range(1,1000);

            ////var pares = from n in numeros
            ////            where n % 2 == 0
            ////            select n * n;
            //var pares = numeros.Where(n => n % 2 == 0).ToArray();
            //foreach (var n in pares)
            //{
            //    Console.WriteLine(n);
            //}
            //Console.ReadKey();
            //dynamic obj = new ExpandoObject();
            //obj.Saludo = "Hola a todos los valientes asistentes al Prepedeutico de c#";
            //obj.Evento = null;
            //obj.Evento += (Action<object,EventArgs>)((o, e) => Console.WriteLine("Saludos desde el manejador de eventos"));
            //obj.Metodo = (Action<string>)((x) =>
            //    {
            //        Console.WriteLine(x);
            //        obj.Evento(obj, EventArgs.Empty);
            //    });
            //obj.Metodo("buuuu");
            //foreach (var item in obj)
            //{
            //    Console.WriteLine(item);
            //}
            //Console.ReadKey();

            var doc = XDocument.Load("xml1.xml");
            dynamic xml = new DynamicXmlReaderDmoVersion(doc);
            var valor = xml.LLave.Item.Valor;
            Console.WriteLine(valor);

            Console.ReadKey();
        }
Example #4
0
 private static DynamicMetaObject DynamicXmlReaderForSingleElement(XElement elem)
 {
     var dynamicXmlReader = new DynamicXmlReaderDmoVersion(elem);
     var target = Expression.Constant(dynamicXmlReader);
     return new DynamicXmlMetaObject(target, BindingRestrictions.GetTypeRestriction(target, typeof(DynamicXmlReaderDmoVersion)).Merge(BindingRestrictions.GetInstanceRestriction(target, dynamicXmlReader)), elem);
 }