有没有办法通过将dll复制到bin中来消耗事件?

时间:2017-04-28 12:40:33

标签: c# asp.net dll event-handling

我有一个asp.net Web应用程序,它几乎没有应用程序事件;比方说 - 创建用户。我的一个客户希望在创建新用户时收到通知。所以我有一个特定于该客户端的DLL,我可以通过注册到onCreateUser上的应用程序事件来发送通知的逻辑。

现在我想知道是否有更好的通用方法,只需更换此dll,对于不同的客户端,我可以做其他事情而不是发送通知。或者只需删除dll,我就可以关闭此行为。

编辑我知道可以通过动态加载使用属性进行反射的dll来实现这一点,就像PreApplicationStartMethodAttribute或使用Interface等一样。但是想确保我不重新发明轮子。

1 个答案:

答案 0 :(得分:0)

我假设您正在尝试/已经实现了OOP的观察者模式? 因为这是我将构建我的代码的模式。

所以伪代码:

 notification method{User createdUser}
{
   bool shouldNotify = dataHandler.getUserNotificationValue(createdUser);
   if(shouldNotify )
   {
       notifier.SendNotification();
   }
}

这将删除甚至拥有DLL pr客户端,只需要db / xml文件/等的要求。以及需要通知的客户之间的关系列表。