我正在使用Autofac,并且QuizManager
有一个事件。 QuizManager
负责创建和处理不同的quizes。这个类的生命周期是暂时的,因此它将有几个实例。
public class QuizManager : IQuizManager
{
// Other methods...
public event Action<string> OnQuizStarted;
}
每次解决此类的一个实例时,我希望另一个类订阅它的事件。这是因为每次测验开始时都会出现&#34;链接&#34; 逻辑。特别是它应该向SignalR中心发送一个事件。我不想在QuizManager
中使用这种逻辑。由于其他原因,我无法将QuizManager
注册为单身人士。 QuizManager
在其他几个类的构造函数中注入。
以下是订阅QuizManager
中的活动的类。
public class QuizHubInvoker
{
public QuizHubInvoker(IQuizManager quizManager)
{
quizManager.OnQuizStarted += OnQuizStarted;
}
private void OnQuizStarted(string quizToken)
{
// Do logic here every time event is invoked.
// It actually invokes a method in a SignalR Hub.
}
}
有没有办法可以订阅一个具有短暂生命周期的类事件?