This is a viewer only at the moment see the article on how this works.
To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk
This is a preview from the server running through my markdig pipeline
ASP.NET M SK1 ViewStateMode… يمنحك المزيد من التحكم في View State
Thursday, 18 February 2010
ViewState هو ألم…there,I’ve said it ! ما يسبب أعظم ألم مع ViewStates هو حقيقة أن الناس يستخدمونه بشكل خاطئ"M SK4"تركه مفعّدا لكل التحكم في صفحة عندما في الواقع تحتاجه حقا فقط لتلك الأداة الوحيدة التي تحتاجها حقا للاستمرار بها"MSC5"its contents to the next page" دايف ريد مطور في فريق ASP.NET كتب مقالاً مميزاً حقاً على ‘فهم حقيقي لوضع الرؤية’, وقبل أن تقرأ ما سيأتي لاحقاً , يجب عليك حقاً أن تذهب وتقرأ ذلك أولاً
إلى الخلف?
حسنا, حسناً الآن أنت تفهم أنه ينبغي عليك أن تستخدم ViewState فقط لتلك الأنظمة التي تحتاجها بالفعل. لكن هناكM SK2 مشكلة … ما تريدون فعله حقاً هو إطفاء View State لصفحة كاملة ثم تشغيله مرة أخرى فقط ل الأدوات التي تحتاجها آسف ولكن لدي بعض الأخبار السيئة, تستطيعون’ لا يمكنكم فعل هذا في أي إصدار من ASPM SK2NET حتى و بما فيها ASP .NET Mska4 SPMske5 لدي أيضا بعض الأخبار الجيدةMSC6 ستكونون قادرين على فعل ذلك عندما يخرج ASP دايف’s الفكرة و العينات من الأسفل هي مزورة بلا خجل
ضع ببساطة جدا, ViewStateMode لديه 3 قيمة ممكنةM SK2 تم تشغيله, غير فعالة و نرث. والتي هي واضحة جداً في وظائفها…تم تشغيله يشغل حفظ وضعية المشهد لتلك التحكم ( أو أي تحكم لطفل يتم ضبطه ‘Inherit’ أو لا يوجد شيء قد تم ضبطه غير فعالة يطفئها مرة أخرى نرث يقول ‘إستخدم ما يتوجب على والدي ’. ذلك ,’ , هو كل ما في الأمر .
هنا ’ نموذج بسيط جداً عن كيفية عمل هذا في الواقع
<الشكل id="formM SK1 runat="serverMSC3>
<تشغيل النص =”server”>
مسح محمي الفراغ OnLoad(EventArgs eM SK1 {
إذا (!IsPostBack) {
اللافتة1.Text = اللافتهة 2.Text[قيمة ديناميكية]";
}
القاعدة.OnLoad(eM SK2
}
</كتابة>
<asp:PlaceHolder IDM SK1PleaseHolder1" runatMSC3serverMska4 ViewStateModeM Ska5DisabledM ska6>
غير فعالة: <asp:Label IDM SK1label1" runatMSC3serverMST4 TextMSM5[وقد تم إعلان القيمة]" /><br />
<asp:PlaceHolder IDM SK1PleaseHolder2" runatMSC3serverMska4 ViewStateModeM Ska5EnabledM ska6>
تم تشغيله: <asp:Label IDM SK1label2" runatMSC3serverMST4 TextMSM5[وقد تم إعلان القيمة]" />
</asp:PlaceHolder>
</asp:PlaceHolder>
<ساعة />
<asp:كتابة مفاتيح ID="كبارة مفاتيحة1"تشغيل runatM SK3خابرة "كتابة ="تغريد" />
كما ترون في هذه العينة نحن ’ نقوم بإيقاف وضعية الرؤية لـ PlaceHolder 1 التحكم | , | العلامة الطفلة |1 | يرث هذه الخاصية ♫ ( | كما أن "Inherit" هو تلقائيًا ♫) | وبالتالي لا يحفظ أي وضعية رؤية | | [قيمة ديناميكية]…
تأثير كل هذا هو أنه , عندما يتم تحميل الصفحة لأول مرة ترون العلامات المعروضة كالتالي
غير فعالة: [قيمة ديناميكية]
تم تشغيله: [قيمة ديناميكية]
لكن , تقوم بـPostBack وترى :
غير فعالة: [وقد تم إعلان القيمة]
تم تشغيله: [قيمة ديناميكية]
كما تتوقعون الآن ’, لم يحفظ أول علامة ’القيمة التي وضعناها في ViewState
ما هو رائع حقاً هو حقيقة أنه يمكنك القيام بهذا أيضاً
<%@ لغة الصفحاتM SK1C#" AutoEventWireup ="trueMST4 CodeBehindMSC5DefaultMS.aspxMSSK7csMSSK8 InheritsMSR9WebApplicationMSL10_DefaultMSC1 ViewStateMode="DisabledM SK3 %>
تذكروا , في الForms للوصف هو مجرد جهاز آخر … إنه يعمل كجهاز التحكم الأصلي لكل جهاز آخر في الصفحة | . هذا يعني أنه لا يوجد جهاز يمكنه أن يحفظ إلا إذا قمت بوضع ViewStateMode في حالة فعالة. من أجل ذلك التحكم أو تحكم أبعد من ذلك ’منظمة التحكم (so, ستكون فائدة عظيمة لContentPlaceHolders في MasterPages
أخبرتكم أن الأمر بسيط