我想添加一些在 DotNetNuke 站点上注册新用户时运行的代码。有一个自定义注册模块,我可以向其中添加代码。我担心这个注册模块仍在进行中,这并不是我真正能控制的。有人可能会破坏我添加的代码或做一些意想不到的事情。
是否有另一个不错的选择我可以使用添加代码到用户会员活动?
我正在考虑创建一个派生自我们现有提供程序的成员资格提供程序(DNN 或 ASP.NET 提供程序)。我将扩展 CreateUser() 的实现以调用原始实现,然后调用我的自定义代码。
好处是它们与注册组件没有耦合。不利的一面是——与添加配置独立于站点其他方面的 HttpModule 不同——我将隐藏现有的成员资格提供程序。假设有人出于其他原因想要更新提供程序——他们将不得不重新编译我的类,而不是能够简单地更改 web.config 文件。
我打算创建一个派生自 MembershipProvider 的泛型类,然后使用原始提供者作为泛型类型参数。我希望这会希望将原始提供程序类型包含在 web.config 定义中。不幸的是,C# 泛型不允许您从泛型类型参数派生。:(