我有一个ASP.NET Web应用程序,并且几乎没有应用程序事件;例如 - 创建用户。我的一位客户希望创建新用户时通知。因此,我有一个特定于该客户端的DLL,可以在其中通过注册到申请事件otCreateuser。
来发送通知。现在,我想知道有一种更好且通用的方式,因此,通过替换此DLL,对于其他客户,我可以做其他事情而不是发送通知。或简单地删除DLL,我可以关闭此行为。
编辑:我知道可以通过使用属性(例如preapplicationStartMethodatTribute(或使用接口等属性来动态加载dlls来进行此操作。但想确保我不会重新发明轮子。
我假设您正在尝试/已经实现了OOP的观察者模式?因为那是我要构建代码的模式。
SO伪代码:
notification method{User createdUser}
{
bool shouldNotify = dataHandler.getUserNotificationValue(createdUser);
if(shouldNotify )
{
notifier.SendNotification();
}
}
这将删除甚至拥有DLL PR客户端的要求,只有DB/XML文件/等。