ASP.NET سیشن مینجمنٹ ٹیوٹوریل [مثال]

HTTP پروٹوکول جس پر تمام ویب ایپلی کیشنز کام کرتی ہیں وہ ایک سٹیٹ لیس پروٹوکول ہے۔ بے ریاست کی طرف سے ، اس کا مطلب صرف یہ ہے کہ معلومات ایک درخواست سے دوسری درخواست تک برقرار نہیں رہتی۔

مثال کے طور پر ، اگر آپ کے پاس لاگ ان پیج ہے جس میں 2 ٹیکسٹ باکس ہیں ، ایک نام کے لیے اور دوسرا پاس ورڈ کے لیے۔ جب آپ اس صفحے پر لاگ ان بٹن پر کلک کرتے ہیں تو ، درخواست کو یہ یقینی بنانا ہوگا کہ صارف کا نام اور پاس ورڈ اگلے صفحے پر منتقل ہو جائے۔

ASP.Net میں ، یہ مختلف طریقوں سے کیا جاتا ہے۔ پہلا طریقہ ویو سٹیٹ نامی تصور کے ذریعے ہے۔ یہ وہ جگہ ہے جہاں ASP.Net خود بخود تمام کنٹرولز کے مندرجات کو محفوظ کرتا ہے۔ یہ اس بات کو بھی یقینی بناتا ہے کہ اسے اگلے صفحے پر پہنچا دیا جائے۔ یہ ویو اسٹیٹ نامی پراپرٹی کے ذریعے کیا جاتا ہے۔

کسی ڈویلپر کے لیے ویو سٹیٹ میں کچھ بھی تبدیل کرنا مثالی نہیں ہے۔ اس کی وجہ یہ ہے کہ اسے صرف ASP.Net کے ذریعے سنبھالا جانا چاہیے۔

دوسرا طریقہ یہ ہے کہ کسی سیشن آبجیکٹ کو استعمال کیا جائے۔ سیشن آبجیکٹ ایپلیکیشن کے زندگی بھر میں دستیاب ہے۔ آپ سیشن آبجیکٹ میں کسی بھی تعداد میں کلیدی قدر کے جوڑے محفوظ کر سکتے ہیں۔ لہذا کسی بھی صفحے پر ، آپ سیشن آبجیکٹ میں کوڈ کی نیچے والی لائن کے ذریعے ایک ویلیو اسٹور کرسکتے ہیں۔

سیشن ['کلید'] = قدر۔

یہ سیشن آبجیکٹ میں ویلیو اسٹور کرتا ہے اور 'کلیدی' حصہ ویلیو کو نام دینے کے لیے استعمال ہوتا ہے۔ اس سے قیمت کو بعد کے وقت میں دوبارہ حاصل کرنے کی اجازت ملتی ہے۔ ایک قیمت حاصل کرنے کے لیے ، آپ صرف ذیل میں بیان جاری کر سکتے ہیں۔

سیشن ['کلید']

ہماری مثال میں ، ہم سیشن آبجیکٹ کو پیج میں نام ٹیکسٹ باکس فیلڈ میں درج نام کو محفوظ کرنے کے لیے استعمال کرنے جا رہے ہیں۔ اس کے بعد ہم اس قدر کو دوبارہ حاصل کرنے جا رہے ہیں اور اس کے مطابق اسے صفحے پر ظاہر کریں گے۔ آئیے ذیل میں کوڈ کو Demo.aspx.cs فائل میں شامل کریں۔

protected void btnSubmit_Click(object sender,EventArgs e) { Session['Name'] = txtName.Text; Response.Write(Session['Name']); lblName.Visible = false; txtName.Visible = false; 1stLocation.Visible = false; chkC.Visible = false; chkASP.Visible = false; rdMale.Visible = false; rdFemale.Visible = false; btnSubmit.Visible = false; }

کوڈ کی وضاحت:-

  1. کوڈ کی پہلی لائن نام ٹیکسٹ باکس کنٹرول کی قدر لیتی ہے اور اسے سیشن آبجیکٹ میں اسٹور کرتی ہے۔ کوڈ آف سیشن ['Name'] کی وضاحت کرکے ، ہم پراپرٹی کو ایک نام دے رہے ہیں جسے 'Name' کہتے ہیں۔ پراپرٹی کا نام بتانے سے ، بعد کے وقت اسے دوبارہ حاصل کرنا آسان ہو جاتا ہے۔
  2. کوڈ کی اگلی لائن سیشن آبجیکٹ سے ذخیرہ شدہ قیمت کو بازیافت کرتی ہے۔ اس کے بعد یہ قیمت 'Response.Write' طریقہ کے ذریعے کلائنٹ کو واپس لکھتا ہے۔
  3. آخر میں ، ہم فارم پر تمام کنٹرول کو پوشیدہ بنا دیتے ہیں۔ اگر ہم ایسا نہیں کرتے ہیں تو ، تمام کنٹرولز کے علاوہ ہماری جوابی اقدار ایک ساتھ دکھائی جائیں گی۔

ایک بار جب آپ مذکورہ بالا تبدیلیاں کریں گے تو آپ کو درج ذیل آؤٹ پٹ نظر آئے گی۔

آؤٹ پٹ:

آؤٹ پٹ سے ، آپ دیکھ سکتے ہیں کہ نام کی سیشن ویلیو بازیافت کی گئی اور براؤزر میں ڈسپلے کی گئی۔

خلاصہ:

  • سیشن مینجمنٹ ASP.net میں ایک طریقہ ہے تاکہ اس بات کو یقینی بنایا جا سکے کہ معلومات ایک صفحے سے دوسرے صفحے پر منتقل ہو جائیں۔
  • کسی صفحے کی ویو اسٹیٹ پراپرٹی خود بخود کنٹرول کی معلومات کو ایک صفحے سے دوسرے صفحے پر منتقل کرنے کے لیے استعمال ہوتی ہے۔
  • 'سیشن' آبجیکٹ ویب پیج کے اندر مخصوص اقدار کو ذخیرہ کرنے اور بازیافت کرنے کے لیے استعمال ہوتا ہے۔