2015-07-13 65 views
0

我正在使用Sitecore 8更新2和WFFM模塊。 我創建了一個使用WFFM的註冊頁面,除了下拉列表中的值(郵政編碼,城市,性別......)以外,一切正常。WFFM - Sitecore:鏈接下拉到用戶配置文件

我將所有表單字段鏈接到配置文件字段,但這些值永遠不會我嘗試將表單下拉菜單鏈接到配置文件上的下拉字段,鏈接到配置文件上的簡單文本字段,但它從不填充任何值。

有誰知道這是爲什麼,我能做些什麼來鏈接這些字段?

回答

2

這是WFFM中的一個錯誤。爲了解決這個問題,下面的代碼添加到您的解決方案然後去項目/sitecore/system/Modules/Web Forms for Marketers/Settings/Field Types/List Types/Drop List和現場MVC Type設置爲{your namespace}.DropListField,[your dll name}

namespace {your namespace} 
{ 
using System.Collections.Generic; 
using System.Linq; 

using Sitecore.Data.Items; 
using Sitecore.Form.Core.Controls.Data; 

/// <summary> 
/// The drop list field. 
/// </summary> 
public class DropListField : Sitecore.Forms.Mvc.Models.Fields.DropListField 
{ 
    /// <summary> 
    /// Initialises a new instance of the <see cref="DropListField"/> class. 
    /// </summary> 
    /// <param name="item"> 
    /// The item. 
    /// </param> 
    public DropListField(Item item) 
     : base(item) 
    { 
    } 

    /// <summary> 
    /// The get result. 
    /// </summary> 
    /// <returns> 
    /// The <see cref="ControlResult"/>. 
    /// </returns> 
    public override ControlResult GetResult() 
    { 
     var value = this.Value as List<string>; 
     var selectListItem = this.Items.SingleOrDefault(x => x.Value == value.First()); 
     var str = selectListItem != null ? selectListItem.Text : string.Empty; 
     return new ControlResult(this.ID.ToString(), this.Title, selectListItem != null ? selectListItem.Value : string.Empty, str); 
    } 
} 
} 
+0

這會有所幫助,但是文本值將被存儲而不是值的值。 – Timon