2012-09-11 12 views
6

मेरे एमवीसी 4 एप्लिकेशन के लिए, एज़ूर में चलाएं, मैं सत्र को सह-स्थित कैश में संग्रहीत करता हूं। जैसा कि माइक्रोसॉफ्ट प्रदान करता है this How-to में वर्णित है।सह-स्थित एज़ूर कैश में संग्रहीत सत्र कई उदाहरणों पर सिंक हो जाता है

मैं दो छोटे उदाहरण चलाता हूं, और सबकुछ ठीक काम करता प्रतीत होता है। मैं एप्लिकेशन में लॉग इन कर सकता हूं, और जब मैं एप्लिकेशन के भीतर ब्राउज़ करता हूं तो मैं लॉग इन रहता हूं। तो सत्र दोनों उदाहरणों पर काम करता प्रतीत होता है।

हालांकि

, जब मैं इस तरह सत्र डेटा कुछ अद्यतन:

HttpContext.Current.Session["someVar"] = "new value"; 

परिवर्तन यह है कि केवल उदाहरण पर एक प्रभाव विशेष रूप से अनुरोध है कि संभाल कि लगता है। अब जब मैं एप्लिकेशन के चारों ओर ब्राउज़ करता हूं, कभी-कभी मुझे प्रारंभिक मान मिलता है और कभी-कभी मुझे अपडेट किया गया मान मिलता है।

मैं web.config में कोई परिवर्तन नहीं किया है, तो यह वास्तव में लग रहा है यह कर के रूप में जब यह Nuget पैकेज से जोड़ा जाता है:

<sessionState mode="Custom" customProvider="AppFabricCacheSessionStoreProvider"> 
    <providers> 
    <add name="AppFabricCacheSessionStoreProvider" 
      type="Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, Microsoft.Web.DistributedCache" 
      cacheName="default" 
      useBlobMode="true" 
      dataCacheClientName="default" /> 
    </providers> 
</sessionState> 

मैं किसी अन्य तरीके से सत्र को संभालने की जरूरत है Azure कैश का उपयोग करते समय, या यह कुछ और है मैं यहाँ याद कर रहा हूँ?

उत्तर

7

आपको applicationName असाइन करने की आवश्यकता है ताकि वितरित कैश उसी एप्लिकेशन सीमा के भीतर साझा स्थिति को देख सके। MSDN forum post for reference देखें।

<add name="AppFabricCacheSessionStoreProvider" 
      type="Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, Microsoft.Web.DistributedCache" 
      applicationName="azureMVC4App" 
      cacheName="default" 
      useBlobMode="true" 
      dataCacheClientName="default" /> 

आप आवेदन सीमाओं के पार कैश राज्य साझा करना चाहते हैं, तो आप sharedId

+0

यह समझ में आता सौंपने होंगे, धन्यवाद! मुझे इसे एक मौका और देना होगा। –

+1

यह एक आकर्षण की तरह काम किया, धन्यवाद फिर से! –