मैं पेज क्लास में परिभाषित स्थैतिक चर में कुछ जानकारी रख रहा हूं (ग्लोबल.एक्सएक्स में नहीं)। मैं केवल कोड में परिवर्तनीय घोषित करता हूं जैसे:लाइफटाइम ऑफ एएसपी.नेट स्टेटिक वैरिएबल
protected static int SomeGlobalUnsecureID;
protected static string SomeGlobalUnsecureString;
और पेज लोड ईवेंट में चर परिभाषित करें। उदाहरण के लिए, मैं डेटाबेस से आईडी जांचता हूं, अगर यह SomeGlobalUnsecureID से अलग है, तो मैं कहीं और से कुछ GlobalUnsecureID और स्ट्रिंग को अद्यतन करता हूं, अन्यथा उन्हें छोड़ दें। यह मेरे ऐप में पूरी तरह से सुरक्षित है। तर्क (यानी वे डेटा सुरक्षित नहीं हैं, हर कोई उन्हें एक्सेस कर सकता है, कोई समस्या नहीं); केवल एक चीज मैं करना चाहते
उपयोगकर्ताओं की परवाह किए बिना स्मृति का एक ही राशि पकड़ो जुड़ा है
यदि और केवल यदि लगातार जानकारी 'स्मृति' में एक से अलग है (क्योंकि वास्तव में पढ़ने बदलें स्ट्रिंग के लिए लेने के लिए मुझे समय है।
अब, के बाद से मैं pageload में जाँच करना, मैं पुनः लोड पृष्ठों में कोई समस्या नहीं है। लेकिन मेरा पेज, webMethods से भरा हुआ है और कभी कभी मैं था देखना स्थिर चर को शून्य किया जाता है। और अजीब हिस्सा है; सत्र स्थिर तब भी सक्रिय होता है जब स्थैतिक चर शून्य हो जाते हैं (इसलिए-> कोई सर्वर या ऐप। पूल पुनरारंभ आदि)
यह मेरे लिए वास्तव में अजीब है। मुझे लगता है कि जब तक एप्लिकेशन (किसी भी तरह) समाप्त नहीं हो जाता है तब तक स्थैतिक चर अपना मूल्य रखेगा। लेकिन सत्र भी समाप्त नहीं हुआ, स्थिर चर शून्य हो गया है। आपकी क्या सलाह है? अनुप्रयोग चर का उपयोग बेहतर विकल्प है? वेब पर मैंने जो भी दस्तावेज पढ़े हैं, वे अनुप्रयोग चर के बजाय स्थैतिक चर का सुझाव देते हैं, क्या मुझे उन्हें किसी भी तरह से अलग करने की आवश्यकता है?
अपने प्रश्न के शीर्ष पर घोषणाओं * * स्थिर btw नहीं कर रहे हैं। –
:) ठीक है, ठीक किया –
'Pageload घटना में चर परिभाषित करते हैं।' मुझे लगता है कि आप शुरू करना मतलब है? एक चर को परिभाषित करना है कि तुम क्या जब आप लिखते हैं 'संरक्षित स्थिर पूर्णांक कुछ कर रहे हैं,"। अब, के बाद से मैं Pageload में जाँच करना, मैं पुनः लोड पृष्ठों में कोई समस्या नहीं "' –