تم تصميم مواقع الويب للزيارات المتكررة من المستخدمين. يسمح التخصيص لموقع الويب بتذكر هوية المستخدم وتفاصيل المعلومات الأخرى، ويوفر سياقًا شخصيًا لكل مستخدم.
يوفر ASP.NET خدمات لتخصيص موقع ويب ليناسب أذواق وتفضيلات عملاء محددين.
تعتمد خدمات تخصيص ASP.NET على ملف تعريف المستخدم. يحدد ملف تعريف المستخدم المعلومات التي يطلبها موقع الويب من المستخدم. على سبيل المثال، الاسم والعمر والعنوان وتاريخ الميلاد ورقم الهاتف المحمول.
يتم تعريف هذه المعلومات في ملف web.config الخاص بالتطبيق ويقوم وقت تشغيل ASP.NET بقراءتها واستخدامها. يتم تنفيذ هذا العمل بواسطة موفر التخصيص.
يتم تخزين ملفات تعريف المستخدمين الموجودة في بيانات المستخدم في قاعدة البيانات الافتراضية التي تم إنشاؤها بواسطة ASP.NET. يمكنك إنشاء قاعدة البيانات الخاصة بك لتخزين ملفات التوقيع. يتم تخزين تعريفات بيانات الملف الشخصي في ملف التكوين web.config.
دعونا ننشئ نموذجًا لموقع ويب حيث نريد أن يتذكر تطبيقنا تفاصيل المستخدم مثل الاسم والعنوان وتاريخ الميلاد وما إلى ذلك. أضف تفاصيل الملف الشخصي باستخدام العنصر الموجود في ملف web.config.
<التكوين><system.web><الملف الشخصي> <properties> <add name="Name" type ="String"/> <add name="Birthday" type ="System.DateTime"/> <group name="Address" "> <add name="Street"/> <add name="City"/> <add name="State"/> <add name="Zipcode"/> </group> </properties></profile></system.web></configuration>
عندما يتم تعريف ملف تعريف في ملف web.config، يكون ملف التعريف متاحًا من خلال سمة ملف التعريف الموجودة في HttpContext الحالي ومتاحًا من خلال الصفحة.
أضف مربع نص لالتقاط مدخلات المستخدم المحددة في ملف الميزة، وزرًا لإرسال البيانات:
قم بتحديث Page_load لعرض معلومات ملف الميزة:
باستخدام System;باستخدام System.Data;باستخدام System.Configuration;باستخدام System.Web;باستخدام System.Web.Security;باستخدام System.Web.UI;باستخدام System.Web.UI.WebControls;باستخدام System.Web.UI.WebControls. WebParts؛ باستخدام System.Web.UI.HtmlControls؛ فئة جزئية عامة _Default: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) { ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); if (pc != null) { this.txtname.Text = pc.Name; this.txtaddr.Text = pc.Address.Street this.txtcity.Text = pc.Address.City; this.txtzip.Text = pc.Address.Zipcode; this.Calendar1.SelectedDate = pc.Birthday } } }};
اكتب المقبض التالي لزر الإرسال وقم بتخزين بيانات المستخدم في ملف الميزة:
protected void btnsubmit_Click(object sender, EventArgs e){ ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); .txtaddr.Text; pc.Address.City = this.txtcity.Text; this.txtstate.Text; pc.Address.Zipcode = this.txtzip.Text;
عند تنفيذ الصفحة لأول مرة، يحتاج المستخدم إلى إدخال المعلومات. ومع ذلك، في المرة القادمة سيتم تحميل تفاصيل المستخدم تلقائيا.
بالإضافة إلى سمات الاسم والنوع التي استخدمناها بالفعل، فإن العناصر لها سمات أخرى. ويبين الجدول التالي بعض هذه الخصائص:
ملكية | يصف |
---|---|
اسم | اسم العقار. |
يكتب | يتم تعيين النوع بشكل افتراضي على السلسلة ولكنه يسمح بأي اسم فئة كامل كنوع البيانات. |
تسلسل AS | التنسيق الذي سيتم استخدامه عند إجراء تسلسل لهذه القيمة. |
readOnly | لا يمكن تغيير قيم ملف التوقيع للقراءة فقط. |
defaultValue | قيمة افتراضية يتم استخدامها في حالة عدم وجود ملف التوقيع أو عدم احتوائه على معلومات. |
allowAnonymous | قيمة منطقية تشير إلى إمكانية استخدام هذه السمة مع الملفات المجهولة. |
مزود | موفر الملف الشخصي الذي ينبغي استخدامه لإدارة هذه الخاصية. |
يسمح التخصيص المجهول للمستخدمين بتخصيص موقع الويب قبل تعريف أنفسهم. على سبيل المثال، يسمح موقع Amazon.com للمستخدمين بإضافة عناصر إلى سلة التسوق الخاصة بهم قبل تسجيل الدخول. لتمكين هذه الميزة، يمكن تكوين ملف web.config كما يلي:
<anonymousIdentification Enable ="true" cookieName =".ASPXANONYMOUSUSER" cookieTimeout ="120000" cookiePath ="/" cookieRequiresSSL ="false" cookieSlidingExpiration ="true" cookieprotection ="Encryption" Coolieless ="UseDeviceProfile"/>