umbraco - Hook Umbraco 表单提交

标签 umbraco umbraco-contour

在提交表单并保存记录之前,我想使用电子邮件地址检查现有记录。我做了一些研究,大多数人建议使用 RecordService.RecordSubmitted 事件,但是当我检查 Form.Core.Services 时,我看不到任何 RecordService。

有没有其他方法可以 Hook 该事件。

我正在使用 Umbraco 7.4.3 和表格 4.3.2

最佳答案

你有几个选择。一种是使用记录存储事件之一。它们包含在以下命名空间中:

Umbraco.Forms.Data.Storage.RecordStorage

以下事件可用:
  • 记录删除
  • 记录获取
  • 记录插入
  • 记录更新

  • 我不是 100% 确定您是否可以删除 RecordInserting 事件中的记录,因为那时它可能不在数据库中,我还没有真正尝试过。

    另一种选择是编写一个自定义工作流,该工作流在插入记录后运行,以查找重复项并在记录重复时删除该记录。在 the Umbraco Community site 上有一些相关文档。 .

    最后,您可以创建一些自定义验证来搜索具有该电子邮件地址的现有记录,并使用 JQuery 或类似方法将其连接起来,如果验证失败,则不提交表单。

    关于umbraco - Hook Umbraco 表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38439531/

    相关文章:

    sql - 提交表单时, azure 上的 Umbraco 轮廓失败

    Recaptcha 不适用于 Umbraco 轮廓表格

    c# - Umbraco MVC 与 CaSTLe Windsor

    c# - 单元测试基于 umbraco 的网站

    mysql - NuGet 依赖项和多个 DLL 版本

    Umbraco Contour 多步表单 - 根据用户输入决定下一步

    visual-studio-2012 - Visual Studio 2012 : MVC, Umbraco 站点在调试时速度极慢

    asp.net - 无法加载 View 状态。正在加载 View 状态的控制树

    Umbraco Form - 从电子邮件中的日期选择器日期中删除时间