मैं अपने .NET C# एप्लिकेशन पर डेटा कैशिंग का उपयोग करना चाहता हूं। अब तक मैंने डेटा कैशिंग जोड़ा है और विशिष्ट तालिकाओं पर एसक्यूएल कैश निर्भरताओं को जोड़ा है। लेकिन यह काफी अच्छा नहीं है। इन तालिकाओं को बहुत बार अद्यतन किया जाएगा लेकिन बहुत से कैश किए गए ऑब्जेक्ट्स के लिए प्रासंगिक नहीं है। इससे डाटा कैशिंग लगभग बेकार हो जाएगी क्योंकि इसे अक्सर फ़्लश किया जाएगा। मैं प्रत्येक ऑब्जेक्ट के लिए विशिष्ट पंक्तियों पर एसक्यूएल कैश निर्भरता को कार्यान्वित करना चाहता हूं। मैं उसे कैसे कर सकता हूँ?मैं पंक्ति विशिष्ट एसक्यूएल कैश निर्भरता कैसे बना सकता हूं?
उत्तर
आपको यह समझने की आवश्यकता है कि SQLDependency कैसे काम करता है। आप subscribe a result set and get notified when that result set has changed। आप किसी भी प्रकार के परिणाम सेट की सदस्यता ले सकते हैं, जिसका अर्थ है किसी भी तरह की क्वेरी, जब तक यह restrictions of the supported statements के अनुरूप है। तालिका या दृश्य होने पर यह वास्तव में कोई फर्क नहीं पड़ता है।
तो तकनीकी रूप से आप उस पंक्ति के लिए विशिष्ट क्वेरी सबमिट करके विशिष्ट अधिसूचनाओं के लिए सदस्यता ले सकते हैं, यानी। एक कठोर कोडित जहां खंड है। आपको संपूर्ण कोड को पुनर्प्राप्त करने और स्मृति में कैशिंग करने के विरोध में केवल पंक्ति-दर-पंक्ति आधार पर आवश्यक डेटा को पुनर्प्राप्त करने और कैश करने के लिए अपना कोड बदलना होगा। बिल्ली, आपको वैसे भी करना होगा यदि आप कम से कम उन तालिकाओं के आकार के बारे में चिंतित हैं। पूरे टेबल को कैशिंग केवल कैटलॉग और संदर्भ डेटा के लिए किया जाना चाहिए जो अक्सर बदलता है या बिल्कुल नहीं।
आप डेटा के विभाजन को पुनर्प्राप्त और कैश करना भी चुन सकते हैं, यानी। कुंजी की व्यक्तिगत श्रेणियां ('ए' और 'डी', 'ई' और 'एच' आदि के बीच कहें और उस विशिष्ट डेटा विभाजन के लिए अधिसूचित होने की सदस्यता लें।
यदि आप understand how SqlDependency works चाहते हैं तो मेरे ब्लॉग में कुछ लेख शामिल हैं , common programming pitfalls of SqlDependency और deployment problems with SqlDependency भी शामिल है।
मुझे लुकअप कुंजियों को कड़ी कोड करने का मतलब नहीं है। आप @parameters OK का उपयोग कर सकते हैं, मेरा मतलब यह है कि आपको केवल रुचि की अपनी पंक्ति में परिणामसेट को प्रतिबंधित करने के लिए WHERE क्लॉज जोड़ना होगा। –
- 1. मैं डोमेन-विशिष्ट क्वेरी भाषा कैसे बना सकता हूं?
- 2. मैं WinForms एप्लिकेशन में एक पंक्ति कैसे बना सकता हूं?
- 3. मैं एक विशिष्ट संस्करण को कैसे बना सकता हूं?
- 4. ट्रांजैक्ट-एसक्यूएल: मैं स्ट्रिंग को टोकन कैसे बना सकता हूं?
- 5. मैं AllocateHwnd थ्रेडसेफ कैसे बना सकता हूं?
- 6. मैं थ्रेड पूल कैसे बना सकता हूं?
- 7. एसक्यूएल Server-- प्रत्येक विशिष्ट पंक्ति
- 8. एसक्यूएल कैश निर्भरता के लिए प्रदर्शन प्रश्न
- 9. क्या मैं चींटी प्रतिलिपि कार्य ओएस-विशिष्ट बना सकता हूं?
- 10. क्या मैं प्रोजेक्ट विशिष्ट कोड स्निपेट बना सकता हूं?
- 11. रूबीजम्स: मैं प्लेटफॉर्म-विशिष्ट निर्भरता कैसे जोड़ूं?
- 12. मैं रिमोट फाइल कैसे बना सकता हूं?
- 13. मैं वर्टिकल यूआईस्लाइडर कैसे बना सकता हूं?
- 14. मैं कॉन्फ़िगर स्क्रिप्ट कैसे बना सकता हूं?
- 15. मैं विस्तारित टेक्स्टबॉक्स कैसे बना सकता हूं?
- 16. मैं रंगीन टेक्स्ट कैसे बना सकता हूं?
- 17. जावास्क्रिप्ट: मैं JSONP कैसे बना सकता हूं?
- 18. मैं एक constraintViolationException कैसे बना सकता हूं?
- 19. मैं पर्ल क्लास कैसे बना सकता हूं?
- 20. मैं वर्चुअल गेमपैड कैसे बना सकता हूं?
- 21. मैं लॉकलेस कतार कैसे बना सकता हूं?
- 22. मैं शेलटोस्ट कैसे बना सकता हूं?
- 23. मैं JSON ऐरे कैसे बना सकता हूं?
- 24. मैं सिंगलटन IENumerable कैसे बना सकता हूं?
- 25. मैं डिमन थ्रेड कैसे बना सकता हूं?
- 26. मैं 404 पेज कैसे बना सकता हूं?
- 27. मैं मैन्युअल diff कैसे बना सकता हूं?
- 28. मैं जावा सैंडबॉक्स कैसे बना सकता हूं?
- 29. मैं स्ट्रिंग को कैसे बना सकता हूं?
- 30. मैं ओसीआर कार्यक्रम कैसे बना सकता हूं?
aspnet_regsql के लिए दस्तावेज़ केवल तालिकाओं का उल्लेख है, लेकिन BTW जब मैं कहता हूँ 'hardcoded WHERE' मुझे शक है यह काम करेंगे, किसी दृश्य के खिलाफ यह उपयोग करने की कोशिश की है?, लेकिन यह एक शॉट के लायक हो सकता है। –