ورود

View Full Version : قرار گرفتن چندتا آیدی توی سشن



bbc_sh
شنبه 02 شهریور 1387, 19:00 عصر
سلام دوستان
من یه گریدویو دارم که توی هر سطر اون یه باتن قرار داره .حالا می خوام وقتی که رو ی هر باتن کلیک میشه آی دی همون چیزی که توی اون سطر قرار دار ه داخل یه سشن قرار بگیره ,و بعد یه پیام به صورت popup بیاد و بگه که اون چیزی که شما انتخاب کردین توی فلان صفحه هست .وتوی یه صفحه دیگه که دوباره گرید ویو هست آیدی که توی سش هست رو تحویل میگیره,حالا میخوام بدونم میشه چند تا ایدی رو وارد سشن کرد؟ یعنی کاربر روی چندتا باتن کلیک کنه ؟ چه طوری؟ممنون

mr_mtc
شنبه 02 شهریور 1387, 22:20 عصر
يك Session درست كن
هر وقت كه روي Button كليك شد؛ مقدار Session را بگير و ID جديد رو به اون اضافه كن؛ حالا دوباره بريز تو Session

ميتوني توي Session يك آرايه ذخيره كني يا مقدار Session تون يك رشته باشه كه مثلا ID ها رو توش با "/" جدا كني

bbc_sh
شنبه 02 شهریور 1387, 22:33 عصر
يا مقدار Session تون يك رشته باشه كه مثلا ID ها رو توش با "/" جدا كني
میشه بیشتر توضیح بدبد.من میتونم یه لیست ایجاد کنم که آیدی ها توش باشه و لیست رو بذارم توی سشن.مشکل من اینجاست که چه طوری آیدی محصولی که توی یه ردیف گریدویو هست پیدا کنم.و بعدش این الیستی که توی سشن هست رو وصل کنم به یه گریدویویی که توی یه صفحه دیگه هست

bbc_sh
یک شنبه 03 شهریور 1387, 10:28 صبح
protected void grid_product(object sender, GridViewCommandEventArgs e)
{
string currentcommand = e.CommandName;
int currentrowindex = Int32.Parse(e.CommandArgument);
string productid = GridView1.DataKeys[currentrowindex].Value;
}
من این کد رو برای پیدا کردن آیدی محصول هر ردیف نوشتم ولی نمیدونم چه طوری یه حلقه بذارم که ایدی ها توی یه لیست قرار بگیره .؟ چون ممکنه کاربر روی چندتا باتن کلیک کنه؟

mr_mtc
یک شنبه 03 شهریور 1387, 19:39 عصر
خوب حالا اين آيدي رو بريز تو يك Session يا Cookies



if (Session["Basket"].ToString() == null)
Session["Basket"] = productid.ToString();
else
{
string strTmp = Session["Basket"].ToString();
strTmp = strTmp.ToString() + "/" + productid.ToString();
Session["Basket"] = strTmp.ToString();
}

bbc_sh
یک شنبه 03 شهریور 1387, 20:25 عصر
من میخوام ایدی رو توی لیست بذارم و بعد لیست رو بذارم تو سشن .چون ممکنه کاربر روی چندتا باتن کلیک کنه .مشکل اینجاست که نمیدونم چه طوری یه حلقه بذارم که آیدی به لیست اضافه بشه؟

mr_mtc
دوشنبه 04 شهریور 1387, 12:50 عصر
ممکنه کاربر روی چندتا باتن کلیک کنه

خوب اون كد هم همين كار رو ميكنه
اول چك ميكنه كه كاربر تا حالا روي يك باتن كليك كرده يا نه؟
سپس مقدار رو به Session اضافه ميكنه

مقدار Session هم چيزي شبيه اين ميشه:
productid1/productid2/productid3/productid4

Vahid_moghaddam
دوشنبه 04 شهریور 1387, 13:59 عصر
می تونید لیست رو از نوع ArrayList بگیرید.


ArrayList list=new ArrayList();
.
.
.
list.add(object);