0% found this document useful (0 votes)
27 views2 pages

ASP Task

task

Uploaded by

aldaroby2019
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views2 pages

ASP Task

task

Uploaded by

aldaroby2019
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

‫)(‪How to get a new session_id and force the session_start‬‬ ‫?

‪event to execute‬‬

‫هو معرف فريد يستخدم لتتبع جلسة المستخدم‪ .‬يتم ‪ ASP.NET، SessionID‬في بيئة ‪@SAMI_AIB‬‬
‫جديد تلقائًيا عندما تبدأ جلسة جديدة‪ .‬ومع ذلك‪ ،‬قد يكون هناك ‪ SessionID‬إنشاء‬
‫جديد‪ SessionID ،‬سيناريوهات يرغب فيها المطورون في إجبار بدء جلسة جديدة والحصول على‬
‫مثل عندما ترغب في قطع الجلسة الحالية وإنشاء جلسة جديدة كجزء من تسجيل الدخول أو‬
‫‪.‬خروج المستخدم‬

‫‪:‬لفعل ذلك‪ ،‬يمكن استخدام الكود التالي‬

‫أوًال‪ ،‬قم بإنهاء الجلسة الحالية ‪//‬‬


‫;)(‪Session.Abandon‬‬

‫من ثم‪ ،‬ابدأ جلسة جديدة ‪//‬‬


‫;)(‪Session.Clear‬‬

‫‪ HTTP‬يتم إنهاء الجلسة الحالية‪ .‬وحين ُتنشأ طلب ‪ Session.Abandon(),‬عندما يتم استدعاء‬
‫في ملف ‪ Session_Start‬جديد وسيتم تفعيل حدث ‪ SessionID‬التالي من نفس المستخدم‪ ،‬سُينشأ‬
‫ببساطة يزيل جميع )(‪ Session.Clear‬كجزء من تحميل الصفحة التالية‪ .‬استدعاء ‪Global.asax‬‬
‫هو الأمر الذي ُينهي )(‪ Session.Abandon‬العناصر من الجلسة الحالية دون إنهائها‪ ،‬لكن‬
‫‪.‬الجلسة فعلًيا‬

‫‪ Global.asax‬في ملف ‪ Session_Start‬يحتوي الحدث‬ ‫على الكود الذي يعمل عند بدء كل جلسة‬
‫‪:‬جديدة‬

‫)‪protected void Session_Start(object sender, EventArgs e‬‬


‫{‬
‫يمكن وضع الكود هنا الذي تريد تنفيذه عند بدء الجلسة ‪//‬‬
‫}‬

‫لأن جميع البيانات )(‪ Session.Abandon‬احرص على نقل أي بيانات جلسة ضرورية قبل استدعاء‬
‫‪.‬في الجلسة الحالية سيتم فقدانها نتيجة الستدعاء هذا الأمر‬

‫يمكنك االنضمام إلى ‪ ASP.NET،‬إذا كنت ترغب في مزيد من المساعدة أو لديك أسئلة أخرى حول‬
‫حيث أستطيع أن أقدم لك المزيد من ‪ - https://t.me/SAMI_AIB -‬قناتي على تيليجرام‬
‫‪.‬الدعم‬

‫‪What are dynamic controls and how do‬‬ ‫‪they‬‬ ‫?‪work‬‬

‫هي العناصر التي ‪ ASP.NET‬في )‪ (Dynamic Controls‬العناصر التحكم الديناميكية ‪@SAMI_AIB‬‬


‫يتم إنشاؤها وإضافتها إلى صفحة الويب برمجًيا خالل وقت التشغيل‪ ،‬بدًال من تعريفها مسبًقا‬
‫هذه تكون مفيدة في السيناريوهات التي ال يمكنك تحديد جميع عناصر ‪ .aspx.‬في صفحة الـ‬
‫‪.‬التحكم التي ستحتاجها في وقت تصميم الصفحة‬

‫‪:‬إليك كيفية عملها‬

‫الإنشاء‪ :‬عندما تحتاج إلى إضافة عنصر تحكم بشكل ديناميكي‪ ،‬تقوم بإنشاء نسخة جديدة ‪1.‬‬
‫‪ new‬أو )(‪ new Button‬مثل ‪ new،‬من العنصر التحكم في الكود الخلفي عن طريق استخدام‬
‫‪TextBox().‬‬

‫‪.‬وغيرها ‪ ID, Text,‬تعيين الخصائص‪ :‬يمكنك تعيين خصائص للعنصر التحكم‪ ،‬مثل ‪2.‬‬

‫‪ .aspx‬إضافة الى الصفحة‪ :‬بعد تكوين العنصر‪ ،‬يتم إضافته إلى صفحة الـ ‪3.‬‬ ‫باستخدام‬
‫‪ PlaceHolder.‬أو ‪ Panel‬من حاوية مناسبة مثل )(‪ Controls.Add‬أسلوب‬

‫تعيين معالج الأحداث‪ :‬لتمكين الربط مع الأحداث‪ ،‬يجب عليك أيًضا إضافة معالجات ‪4.‬‬
‫‪.‬الأحداث برمجًيا‬

‫‪:‬ديناميكًيا ‪ TextBox‬إليك مثااًل بسيًطا على إضافة‬


‫)‪protected void Page_Load(object sender, EventArgs e‬‬
‫{‬
‫)‪if(!IsPostBack‬‬
‫{‬
‫بشكل ديناميكي ‪ TextBox‬إنشاء ‪//‬‬
‫;)(‪TextBox dynamicTextBox = new TextBox‬‬
‫;"‪dynamicTextBox.ID = "dynamicTextBox‬‬
‫إلى الصفحة ‪ TextBox‬إضافة ال ‪//‬‬
‫;)‪PlaceHolder1.Controls.Add(dynamicTextBox‬‬
‫}‬
‫}‬

‫‪ Page_Load.‬في طريقة ‪ PostBack‬واحرص على إعادة إضافة عناصر التحكم الديناميكية في كل‬

‫الديناميكية في دورة حياة الصفحة بشكل صحيح‪ controls ،‬يجب أن يتم إنشاء وإضافة ال‬
‫لضمان استعادة البيانات ‪ Page_Init‬أو في حدث الـ )‪ (PreLoad‬عادة قبل تحميل الحالة‬
‫‪.‬وللحفاظ على معالجة الأحداث بشكل مالئم ‪PostBack،‬بشكل صحيح عند ال‬

‫‪ ASP.NET،‬للمزيد من الإرشادات أو إذا كان لديك أسئلة حول تطوير الـ‬ ‫بإمكانك متابعة‬
‫‪: https://t.me/SAMI_AIB.‬قناتي على تيليجرام من هنا‬

You might also like