テキスト ボックスを動的に作成しています。これらのテキスト ボックスの値を取得してセッションに保存し、データベースに保存できるようにしたいと考えています。これどうやってするの?
したがって、動的に作成されたテキストボックスの値を保存する方法は次のとおりです。
List<Control> _controlsList;
controlsList = new List<Control>(); // object holds the controls
今、私の機能では、このように追加しています。3つ以上のテキストボックスがあることに注意してください
if (i < _applicant.Fields.Count)
_applicant.AddAnswer((_controlsList[i] as TextBox).Text);
else
_application.AddAnswer((_controlsList[i] as TextBox).Text);
_sessions.ApplicationSession = ((_controlsList[i] as TextBox).Text);
// Session["TextboxValue"] = ((_controlsList[i] as TextBox).Text);
セッションクラスがあります
public class JobApplicantSession
{
// public JobApplication ApplicationSession
public string ApplicationSession
{
get {if (HttpContext.Current.Session["Application"] != null)
// return (JobApplication)HttpContext.Current.Session["Application"];
return (string)HttpContext.Current.Session["Application"];
return null; }
set{ HttpContext.Current.Session["Application"] = value; }
}
}
その後追加できますが、別のクラスからそれらを取得すると、最後に追加されたテキストボックスしか取得できません。これらのテキストボックスの値をデータベースに追加できるようにループできる必要がありますが、オブジェクトをループできません
var value = HttpContext.Current.Session["Application"]; //will get last textbox value