2016-12-19 3 views
2

私はWFFMカスタムセーブアクションメソッドを使用しています。ここで私はいくつかのサービスを実行しており、応答を得る、私は次のページで応答を表示する必要があります。私は以下のコードを使用していますが動作しません。WFFMカスタムセーブアクション: - 応答データを感謝ページに転送

internal class WffmCustomSaveAction : WffmSaveAction 
{ 
    public override void Execute(ID formId, AdaptedResultList adaptedFields, ActionCallContext actionCallContext, params object[] data) 
    { 
     HttpContext.Current.Response.Clear(); 

     StringBuilder sb = new StringBuilder(); 
     sb.Append("<html>"); 
     sb.AppendFormat(@"<body onload='document.forms[""form""].submit()'>"); 
     sb.AppendFormat("<form name='form' action='{0}' method='post'>", "http://local.website/thankyoupage"); 
     sb.AppendFormat("<input type='hidden' name='id' value='{0}'>", "id123"); 
     // Other params go here 
     sb.Append("</form>"); 
     sb.Append("</body>"); 
     sb.Append("</html>"); 

     HttpContext.Current.Server.Transfer(sb.ToString()); 
     HttpContext.Current.Response.End(); 
    } 
} 

答えて

0

親愛なる方へリダイレクトするにはSaveActionを使用しないでください。 Sitecoreパイプラインを使用して、リダイレクトURLを変更することができます。実際の例は、MVCフォームの場合はhereです(Webformsのパイプラインも記述されていますが、コード例はありません)。

すべては、 Sitecoreで正しいパイプラインを見つけるまでに至ります。この場合、成功のためにパイプラインが必要です。ただし、webformsとmvcのソリューションには大きな違いがあります。

Webフォーム:Webフォームの場合のパイプラインです:これはSitecore.Forms.configで見つけることができ<successAction>

MVC:MVCの場合のパイプラインです:これはSitecore.MvcForms.configで見つけることができ<wffm.success>

関連する問題