【问题标题】:Overriding the create method on the Umbraco member interface覆盖 Umbraco 成员接口上的 create 方法
【发布时间】:2015-04-12 10:35:44
【问题描述】:

我需要自定义创建(和编辑)成员部分,在保存成员时做一些额外的事情。

这里有几个:

  • 自动为用户生成密码(没有密码/用户名保存时不会出错)

  • 将凭据通过电子邮件发送给用户。

  • 在用户创建或更新成员后,以编程方式填写某些字段。

覆盖该方法的最佳/正确方法是什么?有没有办法更改页面上的标记?

我对 .NET Membership 相当满意,并且根据我所阅读的内容,Umbraco 充分利用了该技术。我只需要知道如何利用 Umbraco 引擎并在成员页面的创建/更新方法上更改一些内容。

任何帮助将不胜感激。

提前致谢。

【问题讨论】:

    标签: .net model-view-controller umbraco


    【解决方案1】:

    我在我的一个 Umbraco 装置中做过类似的事情。我所做的是创建一个继承自umbraco.businesslogic.ApplicationBase 的新类,并像这样覆盖:

     public class UmbracoPublishingManager : ApplicationBase
        {
            public UmbracoPublishingManager()
            {
                Umbraco.Core.Services.MemberService.Created+= MemberService_Created;
            }
    
            void MemberService_Created(Umbraco.Core.Services.IMemberService sender, Umbraco.Core.Events.NewEventArgs<Umbraco.Core.Models.IMember> e)
            {
                // Do stuff (use the parameter e to access the member data you need)
            }
         }
    

    MemberService.Created 会在创建新成员时触发。您还可以根据需要触发许多其他内容,例如“正在保存”、“删除”、“已删除”等。

    【讨论】:

    • 我在umbraco.businesslogic 下看不到ApplicationBase。我正在使用 Umbraco 的第 7 版。我错过了什么吗?还是我们只是在谈论不同的版本?
    • 我在 6.2。似乎它已被弃用并被 ApplicationEventHandler 取代。有关示例,请参阅our.umbraco.org/forum/umbraco-7/using-umbraco-7/…。其余方法同上
    猜你喜欢
    • 1970-01-01
    • 2013-11-14
    • 2014-10-23
    • 2014-07-17
    • 1970-01-01
    • 1970-01-01
    • 2016-08-12
    • 2021-12-14
    • 2018-01-02
    相关资源
    最近更新 更多