Пример #1
0
        static void Main(string[] args)
        {
            IContainer container = new Container();

            TestIoC(container);

            var typeProvider = new TypeProvider();

            var events = typeProvider.GetReferencedTypes(o =>
                                                         o.IsClass && o.Namespace.Contains("Contracts.Events") && o.Name.EndsWith("Event"));

            var handlers = typeProvider.GetReferencedTypes(h => h.Namespace.Contains("OrderProcessor") && h.Name.Contains("Handle"));

            foreach (var type in events)
            {
                Console.WriteLine(type.FullName);
            }

            foreach (var type in handlers)
            {
                var methodList = type.GetMethods().Where(o => o.Name == "Handle");

                //foreach (var method in methods)
                //{
                //    Console.WriteLine(method.GetParameters());
                //}

                Console.WriteLine(type.Name);
            }

            Console.ReadLine();
        }