Web窗体的营销 - 提交表单数据编程(Web Forms for Marketers - Subm

2019-09-03 13:28发布

我目前正在确定范围是否包括Web窗体上一个项目,我目前正在对营销。 该网站将是一个负责任的设计,丰富的用户界面,所以我想有过的形式,例如标签,输入字段等的呈现完全控制,宁可不具有修改WFFM SitecoreSimpleFormAscx.ascx文件或相关css文件。

是否有任何当前的方式,使用C#代码,以某种形式的数据提交给Web窗体营销人员形成了一个已在Sitecore的创建(假设我所有的领域知识)? 该WFFM参考指南具有访问已经提交的web表单数据,但没有对刚刚提交了一些代码段。

Answer 1:

如果你不希望深入自定义控件你可以尝试执行POST到包含从您的响应页面通过JavaScript WFFM表单的页面形式。 另外,您可以嵌入和隐藏自己的网页上wffm形式和特技与脚本再次驾驶它。 我认为第二种方法会更好,因为这将让你更直接地验证失败作出回应。



Answer 2:

你可以使用下面的代码提交表单代码到WFFM DB,它会以那种形式的报告页面无缝地显示出来:

假设你有你的填充在这个类的一个列表中的字段列表:

public class WffmField
    {
        public string FieldName { get; set; }
        public string FieldGuid { get; set; }
        public string FieldValue { get; set; }
    }

场GUID将从Sitecore的来的GUID:

然后,您可以保存到数据库WFFM:

// This should be populated with the data you want to send to the WFFM database
var fields = new List<WffmField>(); 
var wffmDatabaseFields = fields.Select(GetWFFMDatabaseField).ToList();

Sitecore.Forms.Data.DataManager.InsertForm(
    formId: new Sitecore.Data.ID("<Form guid here>"),
    fields: new AdaptedResultList(wffmDatabaseFields),
    sessionID: AnalyticsTracker.SessionId,
    data: null);

希望这可以帮助!



文章来源: Web Forms for Marketers - Submit form data programmatically