سؤال

وأنا أحاول التفاف رأسي حول البنية التحتية للسيطرة على فهم تلك التي تحتفظ ASP.NET حالة العرض ل.

وهناك هذه الضوابط HTML العادي مثلا: <input type="radio" checked="checked"/> -> أنا أفهم هذه لم يكن لديك حالة العرض

وبعد ذلك هناك ضوابط HTML مع RUNAT = "الخادم" <input type="radio" checked="checked" runat="server"/> -> هل حالة العرض الحصول على المحافظة بين إعادات النشر

وبعد ذلك هناك ضوابط ASP.NET <asp:TextBox id="txtMyText" runat="server"/> -> أنا أفهم هذه ديهم حالة العرض

لدينا عدد قليل من عناصر التحكم المخصصة التي ترث HtmlTextBox <myPrefix:myTextBox id="txtMyText" runat="server"/> -> هل هذا هو نفس نوع 2 أعلاه

هل هي آمنة لنفترض أن أي رقابة مع العلامة runat="server" سوف يكون حالة العرض المحافظة عليها؟

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

المحلول

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

نصائح أخرى

وعندما كنا لديها مشاكل مع حالة العرض بدأت باستخدام برنامج مساعد حالة العرض من ثنائي قلعة HTTP : //www.binaryfortress.com/aspnet-viewstate-helper/

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

وأيضا، شيء لا أحد قد ذكر آخر هو ControlState. جاء ذلك جنبا إلى جنب مع ASP.NET 2 ونظرية <م> هو أن الأشياء المهمة التي هو necesssary لعنصر تحكم إلى وظيفة يذهب في الدولة السيطرة، والبيانات وغيرها في حالة العرض، لذلك يمكنك إيقاف في حالة العرض وربط البيانات إلى التحكم الخاصة بك على كل إعادة النشر والسيطرة لا تزال تعمل بشكل أساسي باستخدام controlstate. أقول "نظرية" لأنه في الممارسة تنفيذ يبدو غير مكتمل. عندما تنظر إلى رمز دروبدوونليست باستخدام العاكس على سبيل المثال لم يتم تنفيذ هذا صحيح. هذا قد تغيرت مع الإصدارات الأحدث من الإطار، وأنا لست متأكدا. الكثير من المعلومات عن controlstate هناك إذا كنت تبحث عن ذلك، وأنا مجرد التفكير فما استقاموا لكم فاستقيموا أذكر ذلك.

وAFAIK لا، ليست مصممة أن الضوابط HTML للحفاظ على أي شيء في حالة العرض، إذا كنت تهتم به، واتخاذ webcontrols.

وأي شيء تضعه على وجهة نظر صفحتك وإضافة RUNAT = "الخادم" سوف يكون في حالة العرض المحافظة عليها.

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

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