ASP.NET المدمج في ملف تعريف المستخدم مقابل.فئة/جداول المستخدم ذات النمط القديم

StackOverflow https://stackoverflow.com/questions/1683

  •  08-06-2019
  •  | 
  •  

سؤال

أبحث عن إرشادات بخصوص أفضل الممارسات المتعلقة باستخدام ميزة ملف التعريف في ASP.NET.

كيف يمكنك تحديد ما يجب الاحتفاظ به في ملف تعريف المستخدم المدمج، أو إذا كان عليك إنشاء جدول قاعدة البيانات الخاص بك وإضافة عمود للحقول المطلوبة؟على سبيل المثال، لدى المستخدم رمز بريدي، هل يجب علي حفظ الرمز البريدي في الجدول الخاص بي، أم يجب إضافته إلى ملف تعريف web.config xml والوصول إليه عبر آلية ملف تعريف المستخدم ASP.NET؟

الإيجابيات/السلبيات التي يمكنني التفكير فيها الآن هي أنني لا أعرف الملف الشخصي جيدًا (إنه نوعاً ما مصفوفة الآن)، ربما يمكنني أن أفعل ما أريد إذا اتبعت مسار الجدول (على سبيل المثال، SQL للحصول على جميع المستخدمين في نفس الرمز البريدي مثل المستخدم الحالي).لا أعرف إذا كان بإمكاني فعل الشيء نفسه إذا كنت أستخدم ملف تعريف ASP.NET.

هل كانت مفيدة؟

المحلول

لقد قمت بإنشاء تطبيقين فقط يستخدمان موفر الملف الشخصي.ومنذ ذلك الحين ابتعدت عن استخدامه.بالنسبة لكلا التطبيقين، استخدمته لتخزين معلومات حول المستخدم مثل اسم الشركة والعنوان ورقم الهاتف.

لقد نجح هذا الأمر بشكل جيد حتى أراد عميلنا أن يتمكن من العثور على مستخدم من خلال أحد هذه الحقول.البحث ينطوي على حلقات من خلال كل ملف تعريف المستخدمين ومقارنة المعلومات بمعايير البحث.مع نمو قاعدة المستخدمين، أصبح وقت البحث غير مقبول لعملائنا.كان الحل الوحيد هو إنشاء جدول لتخزين معلومات المستخدمين.تمت زيادة سرعة البحث بشكل كبير.

أوصي بتخزين هذا النوع من المعلومات في جدول خاص به.

نصائح أخرى

يعد ملف تعريف المستخدم إطارًا نظيفًا ولطيفًا للتخصيص الفردي (AKA.خصائص الملف الشخصي).(على سبيل المثالIgoogle) المشكلة من ذلك ليست مصممة للاستعلام وليس مثاليًا لمشاركة البيانات للمستخدم العام. (لا يزال بإمكانك القيام بذلك ، بأداء منخفض)

لذا، إذا كنت ترغب في تحسين تجربة المستخدم المخصصة، فسيكون ملف تعريف المستخدم طريقة جيدة للبدء.وإلا، فإن استخدام الفصل الدراسي الخاص بك والجدول سيكون حلاً أفضل بكثير.

في تجربتي، من الأفضل الحفاظ على المعلومات الموجودة في الملف الشخصي عند الحد الأدنى، فقط ضع الأساسيات هناك المطلوبة مباشرة للمصادقة.يجب حفظ المعلومات الأخرى مثل العناوين في قاعدة البيانات الخاصة بك من خلال منطق التطبيق الخاص بك، وهذا الأسلوب أكثر قابلية للتوسيع والصيانة.

أعتقد أن ذلك يعتمد على عدد الحقول التي تحتاجها.على حد علمي، تعد الملفات الشخصية في الأساس سلسلة طويلة يتم تقسيمها حسب أحجام الحقول المحددة، مما يعني أنها لا يتم قياسها جيدًا إذا كان لديك العديد من الحقول والمستخدمين.

من ناحية أخرى، فهي مدمجة، لذا فهي طريقة سهلة وموحدة، مما يعني أنه لا يوجد منحنى تعليمي كبير ويمكنك استخدامه في التطبيقات المستقبلية أيضًا دون الحاجة إلى تعديله إلى بنية جدول جديدة.

يتيح لك تدوير الشيء الخاص بك وضعه في قاعدة بيانات تم تطبيعها بشكل صحيح، مما يؤدي إلى تحسين الأداء بشكل كبير، ولكن عليك كتابة كل التعليمات البرمجية لإدارة ملف التعريف بنفسك تقريبًا.

يحرر:أيضًا، لا يتم تخزين الملفات الشخصية مؤقتًا، لذا فإن كل وصول إلى ملف التعريف يذهب إلى قاعدة البيانات أولاً (ثم يتم تخزينه مؤقتًا لهذا الطلب، ولكن الطلب التالي سيحصل عليه من قاعدة البيانات مرة أخرى)

إذا كنت تفكر في كتابة شيء خاص بك، فربما موفر ملف التعريف المخصص يمنحك أفضل ما في كلا العالمين - التكامل السلس، مع الأشياء المخصصة التي تريد القيام بها.

أعتقد أنه من الأفضل استخدامه للبيانات التكميلية التي ليست مهمة للمستخدم والتي تكون مهمة فقط في العادة عندما يقوم هذا المستخدم بتسجيل الدخول على أي حال.فكر في البيانات التي لن تكسر أي شيء مهم إذا تم مسحها بالكامل.

بالطبع هذا هو التفضيل الشخصي ولكن البعض الآخر أثار بعض القضايا المهمة الأخرى.

كما أنه مفيد للغاية نظرًا لأنه يمكن استخدامه لمستخدم لم تتم مصادقته والذي يتم الاحتفاظ بملف تعريفه باستخدام ملف تعريف ارتباط مجهول.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top