ذاكرة التخزين المؤقت لبيانات العميل في وحدة تخزين معزولة - asp.net - jquery - ajax - Silverlight

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

  •  18-09-2019
  •  | 
  •  

سؤال

لدي موقعان على الويب للعملاء قيد الاستخدام منذ أكثر من 4 سنوات.تحتوي إحدى الصفحات الموجودة على كلا الموقعين على قوائم منسدلة تحتوي الآن على أكثر من 3000 عنصر.لقد حاولت إيجاد حلول أولية لهذه المشكلة عن طريق إضافة صفحات جديدة إلى كلا الموقعين حيث يستخدم أحد الموقعين Silverlight والآخر يستخدم Ajax.

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

لا يزال إصدار ajax يستخدم حالة العرض ويرسل 400 كيلو بايت + إلى الخادم عند كل طلب.

ما أود فعله هو استخدام إصدار ajax مع تخزين البيانات المنسدلة مؤقتًا على العميل وتنزيل البيانات مرة واحدة فقط يوميًا.

إذا قمت بحفظ البيانات باستخدام asp.net في وحدة تخزين معزولة (لقد قمت بفرز هذا الجزء) فهل من الممكن الوصول إليها باستخدام رمز جانب العميل مثل jquery؟

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

المحلول

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

هل فكرت في شيء مثل هذا:

http://jquery.bassistance.de/autocomplete/demo/

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

ونظراً لوجود 26 حرفاً في الأبجدية، فإنك ستعيد في المتوسط ​​4% من البيانات، أي 120 إدخالاً بدلاً من 3000!!وأيضًا عندما يتعرف المستخدمون على نظامك، يمكنهم كتابة المزيد والمزيد من الحروف والعثور على ما يبحثون عنه بشكل أسرع بكثير.يتفوق على التمرير خلال قائمة مكونة من 3000 إدخال، ويجعل تطبيقك أسهل في الاستخدام وأكثر استجابة وأكثر ملاءمة للشبكة!

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