私のコードは以下の通りです:クライアントのjavascriptはジェネリックリストを作成してセッションに保存するwebserviceメソッドを呼び出します。古いセッションリストオブジェクトを停止するには
[WebMethod(EnableSession = true)]
public void SaveUserSelection(string slctdRooms, string slctdcst)
{
List<SelectRms> SelectR = Session["someinfo"] as List<SelectRms>;
if (SelectR == null)
{
SelectR = new List<SelectRms>();
Session["someinfo"] = SelectR;
}
SelectR.Add(new SelectRms { roomtype = slctdRooms, Roomcst = slctdcst });
}
私は、この
リスト(SlctdRmWebSrv.SelectRms)SelctdRM =(一覧(SlctdRmWebSrv.SelectRms))Sessio [ "someinfoのような別のページのデータを表示するためにセッションをretreaveう"];
if(SelctdRM != null)
{
repeater1.DataSource = SelctdRM;
repeater1.DataBind();
}
問題は、私は新しいリストを作成するには、セッションをretreaveたびに、新しいデータが古いものまで添加されていることです。私は現在のデータだけが表示される状況を作りたいです。私はリストをクリアしたり、セッションを放棄したり、リピータをクリアしてから新しいリセットを追加しようとしました。これを簡単に行うことができます。多くのありがとう
、むしろ全体のリストよりも私のリストの単一の(最初の)要素を返します。これは私がやってミリアンペアものです愚かな質問。私は自分のリストを初期化しようとしましたが、どうすればいいか分かりません。私はメソッドを作成しましたpublic void GetUserContent(){Session ["someinfo"] = new List();}しかしそれは働かない。あなたはそれを初期化する方法について詳しく説明できますか? –
@R_valentin確かに、上記の私の答えを編集します。 – Ulises
非常に貴重な指導に感謝します。私はsaveuserselectionメソッドを、初期化メソッドの成功のすべてをワンクリックで呼び、charmsのように機能します。私が知っていないことは、これがWebサービスへの投稿を2つのステップで行うよりも遅くすることができるかどうかということです。良い時がある! –