2010-09-01 24 views
6

मैं एक MVC परियोजना पर हाल ही में ASP.NET विकास सर्वर पर काम कर रहा है (और मैं खोजने रहा है कि यह है कि यह कैसे कार्य करता है परिवर्तन में असंगत है मैं मेरी कोड है। उदाहरण के लिए, मैं देव वातावरण में सी #/HTML/CSS/जे एस में बदलाव करते हैं और पेज चलाते हैं, और परिवर्तन स्क्रीन पर दिखाई देता है। लेकिन अगर मैं एचटीएमएल फिर से संपादित करें और पृष्ठ को फिर से चलाएँ , नया परिवर्तन प्रकट नहीं होता है। यहां तक ​​कि ctrl + F5 यह नहीं करता है। मैं वेब सर्वर बंद करो और अद्यतन करने के लिए परिवर्तन के लिए फिर से अनुप्रयोग चलाने के लिए की है। किसी और को यह अनुभव किया है? इस सॉर्ट करने के लिए एक रास्ता है समस्या बाहर?ASP.NET विकास सर्वर मार्कअप में परिवर्तन को अपडेट करते नहीं है/कोड

यदि मैं आईआईएस में काम कर रहा हूं और मैं कुछ बदलता हूं, तो ctrl + F5 हमेशा मेरे द्वारा किए गए परिवर्तनों के साथ पृष्ठ को अपडेट करेगा। मैं dev सर्वर को विश्वसनीय मानना ​​चाहता हूं। किसी के पास कोई सुझाव है?

+0

मैं एक पारंपरिक .net 2.0 webforms आधारित वेबसाइट के साथ विजुअल स्टूडियो 2008 का उपयोग करते हुए एक ही सटीक समस्या आ रही है। खुशी है कि मैंने इसे फिर से पूछने से पहले इस सवाल को पाया। – NinjaBomb

+0

हम में से 2 एक ही प्रश्न के साथ और कोई जवाब नहीं! मेरे लिए समाधान आज तक डीवी सर्वर प्रक्रिया को मारने के लिए किया गया है जब यह अभिनय शुरू होता है, और एप्लिकेशन को पुनरारंभ करता है। – DaveDev

+0

यही वह है जो मैं कर रहा हूं। यह मुझे बहुत धीमा कर रहा है और मुझे पागल कर रहा है क्योंकि पिछले हफ्ते यह काम कर रहा था। जहां तक ​​मुझे पता है, तब और मेरे बीच में मेरी कॉन्फ़िगरेशन में कुछ भी नहीं बदला है। मुझे संदेह है कि विंडोज अपडेट के साथ कुछ करने का संदेह है, लेकिन ऐसा लगता है कि यह बहुत दूर है। – NinjaBomb

उत्तर

1

कोशिश समाशोधन कैश .. हर अनुरोध

Response.Cache.SetCacheability(HttpCacheability.NoCache); 
Response.Cache.SetExpires(DateTime.Now.AddSeconds(-1)); 

हैं पर अभी भी काम नहीं। पग लोड घटना

Response.AppendHeader("Pragma", "no-cache"); 
Response.AppendHeader("Cache-Control", "no-cache"); 

Response.CacheControl = "no-cache"; 
Response.Expires = -1; 

response.ExpiresAbsolute = new DateTime(1900, 1, 1); 
response.Cache.SetCacheability(HttpCacheability.NoCache); 
+0

इस और पेज के एक पारी + F5 ताज़ा कर के बीच अंतर क्या है? मैंने उन पृष्ठों के शीर्षलेखों की जांच की है जिनसे मैं अनुरोध कर रहा हूं और वे हर बार पूरी तरह से रीफ्रेश होने लगते हैं। इसके अलावा, प्रत्येक पृष्ठ पर कार्य कर रहे हैं, और उत्पादन करने के लिए जोर दे रहा से पहले इसे बाहर ले जाने की याद में जोड़ने के लिए है, बोझिल लगता है। – NinjaBomb

+1

प्रत्येक पृष्ठ पर नहीं। Global.asax.cs फ़ाइल के तहत Application_BeginRequest ईवेंट नामक एक ही स्थान पर। –

+0

जब भी पेज ताजा है, वेब पेज अपनी मशीन के लिए कैश किया गया है। और सर्वर से बदले पृष्ठ को तेज़ी से लोड करें, यह पहले कैश में दिखता है, और यदि वहां से लोड मिलता है। तो ऐसी चीज होती है। लेकिन उपर्युक्त कोड में जब पहली बार पृष्ठ लोड होता है, जैसा कि पहले से ऊपर कोड में यह वर्तमान अनुरोध का कोई कैश नहीं बनाएगा, लेकिन अगर किसी भी तरह से यह बनाता है तो इसकी समाप्ति तिथि 1/1/1900 सेट हो जाएगी जो पहले से ही है पार किया गया है, इसलिए बनाया गया कैश अगले अनुरोध के तुरंत बाद समाप्त हो जाएगा और यह फिर से पुरानी तारीख के साथ एक नया समाप्ति तैयार करेगा .. और इसलिए –