在C#中,可以使用lambda表达式来处理事件订阅。以下是一个示例:
public class EventPublisher { public event EventHandler MyEvent; public void DoSomething() { // 触发事件 MyEvent?.Invoke(this, EventArgs.Empty); } } public class EventSubscriber { public EventSubscriber(EventPublisher publisher) { // 使用lambda表达式订阅事件 publisher.MyEvent += (sender, e) => { Console.WriteLine("Event received!"); }; } } class Program { static void Main() { EventPublisher publisher = new EventPublisher(); EventSubscriber subscriber = new EventSubscriber(publisher); publisher.DoSomething(); // 输出:Event received! } }
在上面的示例中,EventPublisher
类有一个事件 MyEvent
,EventSubscriber
类使用lambda表达式订阅了这个事件。当 DoSomething
方法被调用时,事件会被触发并lambda表达式中的代码会被执行。