カンマ(1,2,3,4 ...)で区切られた数値のシーケンス入力をセッションオブジェクトに保存したい
そして私のコードは:
string items = string.Empty;
protected void Button1_Click(object sender, EventArgs e)
{
fillitem(TextBox1.Text);
showsession();
}
void fillitem(string par1)
{
if (Session["itemvar"] != null)
{
items = Session["itemvar"].ToString();
Session["itemvar"] = null;
}
items += par1 + ",";
Session["itemvar"] = items;
}
void showsession()
{
string itempp = string.Empty;
if (Session["itemvar"] != null)
{
itempp = Session["itemvar"].ToString();
int indexOfkoma = itempp.LastIndexOf(",", StringComparison.OrdinalIgnoreCase);
if (indexOfkoma != -1)
{
itempp = itempp.Substring(0, indexOfkoma);
}
}
Label1.Text = itempp;
}
コードは私のローカルでwelを実行しています。しかし、サーバーで公開すると、セッションオブジェクトは以下のトランザクションのような奇妙な結果を返します。
Button1_Clickイベント1結果:Session ["itemvar"] Return:1
Button1_Clickイベント2結果:Session ["itemvar"]戻り値:2 ---->正しい結果は次の値を返すはずです:1,2
Button1_Clickイベント3結果:Session ["itemvar"]戻り値:1,3 ---->正しい結果は次のようになります:1,2,3
Button1_Clickイベント4結果:Session ["itemvar"]戻り値:2,4 ---->正しい結果は次のようになります:1,2,3,4
何か考え、これらの奇妙な行動の原因は何ですか?