Professional Documents
Culture Documents
CH11
CH11
-0-
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
-1-
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
الكلمات المفتاحية
متغيرات الحا ا ااالا ا ااة ،View state variablesمتغيرات الحا ا ااالا ا ااة ،Session variablesالكعكا ا ااات
.Cookies
الملخص
نستعرض في هذا الفصل أساسيات إدارة الحالة.
األهداف التعليمية
يتعرف الطالب في هذا الفصل على:
التعامل مع متغيرات الحالة View state variables
التعامل مع متغيرات الحالة Session variables
التعامل مع الكعكات Cookies
المخطط
يضم فصل إدارة الحالة 3وحدات ( )Learning Objectsهي:
متحوالت الحالة View State
الحفاظ على حالة الجلسة
الكعكات
-2-
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
األهداف التعليمية
استخدام متحوالت الحالة من النوع .View State
-3-
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
مثال:
ُيبين المثال التالي استخدام لتخزين قيم صناديق النص في نموذج واسترجاعها حين الحاجة.
-4-
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
-5-
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
األهداف التعليمية
التعامل مع متغيرات الجلسة .Session variables
-6-
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
مثال:
نقوم في المثال التالي وفي كل مرة يختار فيها المستخدم عنوان كتاب بتخزين هذا الخيار في متغير جلسة
وذلك في إجرائية الزر .submit
-7-
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
-8-
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class Options : System.Web.UI.Page
{
// stores values to represent books as cookies
private System.Collections.Hashtable books =
new System.Collections.Hashtable();
-9-
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
- 10 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
// display session ID
idLabel.Text = "Your unique session ID is: " +
Session.SessionID;
- 11 -
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
يتم االنتقاال إلى الصا ا ا ا ا ا اافحاة التاالياة والتي تقوم بابظهار معلومات عن الكتب
عناد النقر على الرابط الثااني ّ
المخزنة في متغيرات الجلسة:
- 12 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
- 13 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
- 14 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
} // end else
} // end method Page_Init
} // end class Recommendations
- 15 -
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
الكعكات
األهداف التعليمية
التعامل مع الكعكات .Cookies
- 16 -
الفصل :11إدارة الحالة مقرر برمجة الويب ()1
الكعكات Cookies
تُستخدم الكعكات لتخزين بيانات معينة في ملفات خاصة على حاسب المستخدم وذلك للمحافظة على هذه
البيانات خالل الجلس ا ا ا ااة وبين الجلس ا ا ا ااات المختلفة للمس ا ا ا ااتخدمُ .يمكن أن تُس ا ا ا ااتخدم الكعكات مثالً لتخزين
تفضا ا اايالت مسا ا ااتخدم عند زيارته لموقع تسا ا ااوق للمرة األولى .حيث سا ا اايتم اسا ا ااتخدام هذه التفضا ا اايالت في
الزيارات التالية للموقع لتغيير ترتيب إظهار السلع مثالً.
مثال:
نقوم في المثال التالي وفي كل مرة يختار فيها المس ااتخدم عنوان كتاب بتخزين هذا الخيار في كعكة وذلك
في إجرائية الزر .submit
- 17 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
- 18 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
// Options.aspx.cs
// Processes user's selection of a programming language
// by displaying links and writing a cookie to the user's machine.
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class Options : System.Web.UI.Page
{
// stores values to represent books as cookies
private System.Collections.Hashtable books =
new System.Collections.Hashtable();
- 19 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
- 20 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
- 21 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
يتم االنتقاال إلى الصا ا ا ا ا ا اافحاة التاالياة والتي تقوم بابظهار معلومات عن الكتب
ّ عناد النقر على الرابط الثااني
:المخزنة في الكعكة
- 22 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
// Recommendations.aspx.cs
// Creates book recommendations based on cookies.
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
if ( cookies.Count > 0 )
- 23 -
إدارة الحالة:11الفصل )1( مقرر برمجة الويب
{
for ( int i = 0; i < cookies.Count; i++ )
booksListBox.Items.Add( cookies[ i ].Name +
" How to Program. ISBN#: " + cookies[ i ].Value );
} // end if
else
{
// if there are no cookies, then no language was chosen, so
// display appropriate message and
// clear and hide booksListBox
recommendationsLabel.Text = "No Recommendations";
booksListBox.Items.Clear();
booksListBox.Visible = false;
- 24 -