1

ユーザーが製品をバスケットに追加してセッション変数に保存するための動的配列を作成する最良の方法は何でしょうか。シリアル化可能な配列が機能すると言われましたが、オンラインで解決策を探しているときに、ArrayList完璧に思えたものに出会いましたしかし、私はそれを実装できないようです。

私はと呼ばれる別のクラスを持っていますBasket:

ArrayList basketItems = new ArrayList();

選択リンクを使用するか、代わりにリストビューを使用して独自のボタンを使用してグリッドビューから製品を選択しbookID、配列に追加できるようにする必要があります。これはセッション変数に保存され、バスケットページに送信されます。これbookIDは、本の詳細などを出力するために SQL テーブルに対して再び使用されます。

4

2 に答える 2

4

ArrayList は、この問題に対する通常の .NET 1.x ソリューションです。.NET 2.0 以降を使用している場合は、単純な汎用リスト ( List<T>) を使用します。

このような:

var myIDs = new List<int>();

Add メソッドで項目を追加できます。

myIDs.Add(2);
myIDs.Add(42);

次の方法でセッション変数に割り当てることができます。

Session["IdList"] = myIDs;

そして、あなたはそれを回復することができます:

var stuff = (List<int>)Session["IdList"];

お役に立てれば

于 2010-11-28T18:17:35.693 に答える
2

2003 年であれば問題なく動作していたはずですが、今は型安全でキャストの必要がないArrayListジェネリックを使用することをお勧めします。List<T>

したがって、次のコレクションを持つことができます。

List<int> productIds = new List<int>();
productIds.Add(1);
productIds.Add(2);
于 2010-11-28T18:15:23.773 に答える