aierong [العمل الأصلي]
هذه
هي المرة الأولى التي أقوم فيها بإنشاء عربة تسوق لموقع BToC، وقد قمت بتلخيص طريقة تخزين البيانات في عربة التسوق
يمكن تخزين أي نوع من البيانات في الجلسة. كل مستخدم لديه معرف جلسة فريد يستخدم لتمييز بيانات جلسة عربة التسوق للمستخدمين المختلفين العديد من المستخدمين يستخدمون عربة التسوق، أولاً، ستشغل كمية كبيرة من موارد الخادم. تحتوي الجلسة على عيب صغير، فهي تعتمد على ملف تعريف الارتباط للتواصل مع المستخدم، وبمجرد إغلاق المستخدم لملف تعريف الارتباط، سيكون استخدام الجلسة أكثر مزعجة
بطبيعة الحال، في ASP. هناك طريقتان أخريان لحفظ بيانات الجلسة في NET، إحداهما هي تعيين خادم آخر لتخزين بيانات الجلسة، والذي يمكنه مشاركة حمل التشغيل لخادم الويب بشكل فعال.
والآخر هو تخزين بيانات الجلسة في MS SQL. ويتم تنفيذ MS SQL باستخدام الجداول المؤقتة المحلية. كما يعين MS SQL معرفًا فريدًا لكل جدول مؤقت
محلي هذا المعرف للتمييز بين بيانات الجلسة المختلفة لمستخدمين مختلفين. ومع ذلك، لا أوصي بهذا الأسلوب، حيث أن إنشاء الجداول المؤقتة وحذفها في قاعدة البيانات سيؤدي إلى زيادة التحميل على قاعدة البيانات.
الطريقة الثانية: استخدام جدول (ShoppingCart) في قاعدة البيانات.
طريقة التنفيذ المفضلة لدي هي
أن الجدول يحتوي على عدة حقول أساسية.
معرف سلة التسوق CartId (فريد)
معرف المنتج (فريد)
كمية البضائع المشتراة من قبل مستخدمي الكمية
تاريخ إنشاء عربة التسوق:
حقل معرف سلة التسوق في هذا الجدول هو معرف عربة التسوق الذي يميز المستخدمين المختلفين، إذا قام المستخدم بتسجيل الدخول، فيمكنك تخزين معرف اسم تسجيل الدخول للمستخدم الذي قام بتسجيل الدخول في الجدول لم يقوم المستخدم بتسجيل الدخول ويستخدم عربة التسوق،
يمكنك تعيين GUID (المعرف الفريد العالمي) كمعرف عربة التسوق.
تحتوي هذه الطريقة أيضًا على بعض العيوب. أولاً، ستتسبب في كمية كبيرة من البيانات غير الصالحة. كما نعلم جميعًا، فإن الأشخاص الذين يستخدمون عربة التسوق قد لا يقومون في النهاية بفحص البضائع وشرائها. ولكن لاستخدام عربة التسوق
، يجب عليك إدراج البيانات ذات الصلة في الجدول (ShoppingCart). بمجرد مغادرة المستخدم غير المسجل للموقع، تصبح بياناته في الجدول كومة من البيانات المهملة، لأنه عندما يقوم بتسجيل الدخول. في المرة القادمة، نخصص
له معرف عربة التسوق CartId الجديد. إذا كانت هناك بيانات نفايات، فعلينا الحفاظ على هذا الجدول من وقت لآخر، يمكننا كتابة عملية لمسح بيانات النفايات (باستخدام الحقلين CreateDate وCartId لتحديد ذلك). يمكنك أيضًا الاتصال بها يدويًا إذا كنت تريد القيام بذلك عن طريق إذا تم تشغيل MS SQL نيابةً عنا، فيمكن إعداد JOB، وستقوم JOB تلقائيًا باستدعاء العملية لمسح البيانات المفقودة.
عند الحديث عن عيوب السحب، يجب أن نتحدث عن مزايا هذه الطريقة.
1. فهو يستهلك موارد نظام أقل، ويمكننا وضع قاعدة البيانات في كمبيوتر واحد وخادم الويب في كمبيوتر آخر، بحيث يمكن الاستفادة من موارد النظام بالكامل.
2. يمكن الاحتفاظ بالبيانات الموجودة في عربة التسوق بشكل فعال، ويمكننا أن نتخيل أن العميل يغادر محطة التسوق فجأة لسبب آخر (تعطل، وما إلى ذلك) أثناء التسوق، ويتم
الاحتفاظ
ببياناته بشكل فعال عند تسجيل الدخول بعد ذلك سيتم حفظ عربة التسوقأيضًا في المرة الأخيرة لمنع المستخدمين من شراء البضائع مرة أخرى (هذه الوظيفة صالحة فقط لعربات التسوق الخاصة بالمستخدمين الذين قاموا بتسجيل الدخول في حالة استخدام جلسة لتنفيذ
عربة التسوق
).، بمجرد مغادرة جميع المستخدمين للموقع، سيتم فقدان جميع البيانات الموجودة في عربات التسوق الخاصة بهم. الفشل
سهل، لقد قمت للتو بتلخيص ذلك، لأنني اتصلت للتو بـ ASP. NET، لا أعرف الكثير عن العديد من الجوانب، وقد تكون هناك طرق أخرى لتنفيذ عربة التسوق، وآمل أن تقدموا لي بعض النصائح.