हम कैसे .net 4 ग्राहक प्रोफ़ाइल ढांचे में एक कैशिंग हो सकता है

वोट
1

'.NET फ्रेमवर्क 3.5 और पिछले संस्करणों में, ASP.NET System.Web.Caching नाम स्थान में एक में मेमोरी कैश कार्यान्वयन प्रदान की है। .NET फ्रेमवर्क के पिछले संस्करणों में, कैशिंग केवल System.Web नाम स्थान में उपलब्ध था और इसलिए ASP.NET कक्षाओं पर निर्भरता की आवश्यकता है। .NET फ्रेमवर्क 4 में, System.Runtime.Cachingनाम स्थान एपीआई कि दोनों वेब और गैर वेब अनुप्रयोगों के लिए तैयार कर रहे हैं शामिल हैं। '

ऊपर स्पष्ट लेकिन .NET Framework 4 क्लाइंट प्रोफ़ाइल में कैशिंग के बारे में क्या कर रहे हैं? मैं इसके बारे में खोज करने की कोशिश की, लेकिन मैं इस सवाल का जवाब नहीं मिल सका। मैं System.Web जोड़ने या dll के System.RunTime.caching की कोशिश की लेकिन यह नहीं जोड़ सके।

28/03/2018 को 13:25
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


2 जवाब

वोट
0

इस सूत्र पढ़ना: WPF नेट 4.0 ग्राहक प्रोफाइल और कैशिंग ऐसा लगता है कि System.RunTime.Caching ग्राहक प्रोफ़ाइल में शामिल नहीं है तो आप का उपयोग करने के लिए सक्षम नहीं होगा कि आप लक्ष्य कंप्यूटर पर .NET Framework संस्करण पर कोई नियंत्रण नहीं है, तो । आप एक स्थानीय डेटाबेस में डेटा स्टोर या AppData को serialise सकता है। यह नमूना आदेश सत्रों में उपयोगकर्ता सेटिंग्स लागू करने के लिए में AppData करने के लिए एक वर्ग serialises। https://gallery.technet.microsoft.com/WPF-Dynamic-Fonts-ad3741ca

वे बाहर निकलने पर अधिक से लिखा।

    private void Application_Exit(object sender, ExitEventArgs e) 
    { 
        var fileName = Path.Combine(AppData.Location, "FontDetails.xml"); 
        if (!Directory.Exists(AppData.Location)) 
        { 
            Directory.CreateDirectory(AppData.Location); 
        } 

        FontDetails fd = Application.Current.Resources["FontDetails"] as FontDetails; 
        DataContractSerializer ser = new DataContractSerializer(typeof(FontDetails)); 
        var xmlSettings = new XmlWriterSettings { Indent = true, IndentChars = "\t" }; 
        using (var writer = XmlWriter.Create(fileName, xmlSettings)) 
        { 
            ser.WriteObject(writer, fd); 
        } 
    } 

अपने एकमात्र उद्देश्य कुछ डेटा विभिन्न विंडो दूर छिपाया जा सके तो / पृष्ठों तो आप इसके Application.Current.Resources में धक्का सकता है। आप एक संसाधन शब्दकोश आप App.xaml में विलय में एक वस्तु के साथ शुरू कर सकता है। पकड़ो अपने प्रथम पृष्ठ की viewmodel में। करने के लिए बाध्य है या नहीं तो उस के साथ काम करते हैं। फिर अपने दूसरे पृष्ठ में यह हड़पने। या फिर आप एक वस्तु को प्रोग्राम के Application.Current.Resources को तो जोड़ सकता है यह बाद में पता वापस हड़पने।

        var myClass =  new MyClass();
        // Do whatever with it.
        // Then store it
        Application.Current.Resources.Add("CachedInstance", myClass);

        // Get it back out.
        var classLaterOn = Application.Current.Resources["CachedInstance"] as MyClass;
28/03/2018 को 14:45
का स्रोत उपयोगकर्ता

वोट
0

ऊपर स्पष्ट लेकिन .NET Framework 4 क्लाइंट प्रोफ़ाइल में कैशिंग के बारे में क्या कर रहे हैं?

यह ग्राहकों का प्रोफाइल में उपलब्ध नहीं है। पूर्ण ढांचे का उपयोग करने या अपने कैशिंग आवश्यकताओं के एक और समाधान खोजने की जरूरत है।

28/03/2018 को 13:36
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more