سؤال

في رحلتي إلى أعماق مخصص ASP.NET التحكم في تنمية أنا الواضح على رأسي .. ASP.NET إعادة نشر نموذج وكيف يؤثر على التحكم في التنمية.

أنا أفهم أن الضوابط لا "عمر" في ASP.NET وبالتالي يجب إعادة تهيئة على كل تحميل الصفحة.يمكننا التغلب على ذلك من خلال استمرار الكائنات القيم/المعلمات إلى ViewState.

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

ما أبحث عنه هو:

ما بدائل علينا باستخدام نموذج إعادة النشر تهيئة الضوابط ؟

أعلم أننا يمكن أن استخدام QueryString ، ولكن يبدو بفظاعة فوضوي ، ومن الواضح أنه لا يمكن الاعتماد عليها.

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

شكرا جزيلا ^_^

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

المحلول

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

نصائح أخرى

لديك لتخزين القيم في مكان ما ، لذلك تقتصر على سلسلة الاستعلام الخفية حقول النموذج.إذا كنت تتصل إلى HTTP أساسا إما GET أو POST المعلمات.

أنا افترض أنك يمكن استخدام ملفات تعريف الارتباط ، ولكن ذلك سيكون فوضوي حقا.

  1. متجر الخاص بك الدولة الكائن في الدورة السياق:هذا التحول عبء الحفاظ على الدولة من العميل إلى الخادم ، قد تكون مقبولة على نطاق صغير تطبيقات الإنترانت.على مواقع في العاصمة-لقد الإنترنت, هذا لن العمل ؛

  2. اياكس-تمكين التحكم الخاصة بك:في هذه الحالة ، التغييرات تحتاج إلى نشرها مرة أخرى.اختيار الإطار الصحيح هو المفتاح هنا ، انظر http://www.asp.net/ajax/ajaxcontroltoolkit/samples/ الرسمية MS النهج ؛ العديد من الآخرين ممكنة.

إذا كنت حقا تبحث عن بدائل إعادة نشر النموذج تماما, ثم أود أن أقترح البحث ASP.NET إطار MVC.أحب أن ركلة WebForms لكبح تفعل كل أشيائي في MVC, ولكن للأسف, رمز تراث هو tarbaby وإعادة كتابة يكاد يكون الحل أبدا, لذا المكونات فصاعدا...

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

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