Свободная конфигурация интерфейса с лямбдами в C #

Многие проекты с открытым исходным кодом s используют класс конфигурации и лямбда-выражения, чтобы прояснить настройку сложного объекта. Возьмем, к примеру, Mass Transit . Простая конфигурация была бы такой.

Bus.Initialize(sbc =>
        {
            sbc.UseMsmq();
            sbc.VerifyMsmqConfiguration();
            sbc.VerifyMsDtcConfiguration();
            sbc.UseMulticastSubscriptionClient();
            sbc.ReceiveFrom("msmq://localhost/test");
        });

При наведении указателя мыши на Initialize в Visual Studio появляется сообщение, что параметр для вызова метода - Action . Мне было интересно, может ли кто-нибудь показать простой пример использования этого шаблона в классе. Я даже не знаю, как назвать этот тип шаблона, и мой "GoogleFu" пока не работает. В этом конкретном случае я понимаю, что метод работает с одноэлементным шаблоном. Но меня устраивает то, что это метод экземпляра класса.

8
задан Matt Phillips 31 January 2012 в 00:17
поделиться