2016-01-07 54 views
1

我正在开发一个模块,当当前用户在我们的网站上登录或注册一个新帐户时,会自动在姊妹网站上创建一个新用户。新帐户注册后,我已经有了该模块。现在我需要找到一种在用户登录时触发它的方法。任何建议或指导都是非常感谢的。当用户登录时,DNN是否触发了一个事件?

+0

您是否使用DNN注册和登录模块或任何自定义模块? – Keval

+0

@Dexterity - 我正在使用DNN注册和登录模块。顺便说一句我正在运行Evoq 8. – Dreampoet

+0

DNN没有一个好的基于“事件”的模型。您可以监视事件日志表,有人登录时可以存储事件日志记录,您可能需要设置一个流程来监视该流程,并从那里采取行动。或使用自定义注册/登录模块 –

回答

3

DNN 7.4(Evoq 8.0)为用户和网站添加事件处理。因此,您可以创建一个实现IUserEventHandlers的类并使用[Export(typeof(IUserEventHandlers))]属性对其进行注释,并且无论用户通过身份验证,还是创建,删除,删除和批准,DNN都会自动调用您的方法。

using DotNetNuke.Entities.Users; 

[Export(typeof(IUserEventHandlers))] 
public class MyUserEventHandlers : IUserEventHandlers 
{ 
    public void UserAuthenticated(object sender, UserEventArgs args) 
    { 
     SisterSiteLibrary.CreateUserOnSisterSite(args.User); 
    } 

    public void UserCreated(object sender, UserEventArgs args) 
    { 
    } 

    public void UserDeleted(object sender, UserEventArgs args) 
    { 
    } 

    public void UserRemoved(object sender, UserEventArgs args) 
    { 
    } 

    public void UserApproved(object sender, UserEventArgs args) 
    { 
    } 
} 
+0

谢谢感谢您的协助。 – Dreampoet

+0

好奇心,你知道用户注销时是否有事件吗?或者登录过期?如果你这样做 - 告诉我,我会提出一个问题,你可以回答:) – Grantly

+0

@grantly - 有没有人回答你关于用户注销时发生的事件?我也需要这种功能,但一直无法找到它。谢谢! – Joe

相关问题