2017-11-06 24 views
0

私はRiSEと呼ばれるCMSで作業しており、多くの制約があります。私はPHPでC#を出力しようと考えています。動的に追加された入力のリスト/参照を生成する

「iParts」でまとめて動的に生成される連絡フォームがあります。各iPartには、テンプレートとジャンクのウィザードにASCXファイルが含まれています。

例として、2つのiPartにそれぞれテキストボックスを追加することができます。値を取得するために投稿後に呼び出すことができるこれらの2つのテキストボックスのリストを生成するにはどうすればよいですか?私が今やって、ほとんど機能しています何

....

私は、コントローラと呼ばれていると思うものを持っている、そしてそれは(と思う)ので、のようなプロパティをdefins。

namespace EmailForm 
{ 
    [DataContract(Name = "EmailForm")] 
    public class EmailForm : iPartCommonBase 
    { 
    public static Dictionary<String, String> inputs = new Dictionary<String, String>(); 
    } 
} 

は今、私の(と思う)コントローラで、私はそうのようなDictionary inputsに追加します。

EmailForm.inputs[randId + "_" + inputEmailLabel.ToString()] = input.UniqueID; 

私は何で終わることはいくつかのランダムな文字列(クラッシュ/上書きを防ぐため)とidが付いたラベルが含まれているキーと値のペアのリストです。

フォームが送信されると、私は辞書をループし、IDストリングを使用して投稿された値にアクセスします。かなりまっすぐですが、私がページをリロードしてフォームを記入して提出する前に3回言うと、最後の2つの参照非存在ID以外のすべてのエントリが6つの辞書になります。

どうすればよいですか? (残念ながら、LAMPはオプションではありません使用)私は簡単な解決策を発見した最後に

答えて

0

、私はそれはハックだと思うが、そうASP

if (Request.Form.AllKeys.Contains(post.Value)) 
{ 
    emailBody.Add(post.Key.Substring(8) + ": " + Request.Form[post.Value]); 
} 

がある辞書はまだ「ならず者」のエントリが含まれていますしかし、私はそれらを既存の投稿データでフィルタリングします。

関連する問題