मूल पृष्ठ से पृष्ठ का वर्तमान उदाहरण एक्सेस करें - क्या यह ASP.NET में एक स्थिर वर्ग से वर्तमान Page
तक पहुंच बनाना संभव है?एक स्थिर वर्ग
मैं नहीं सोच रहा हूं, क्योंकि Google कोई परिणाम नहीं बदलता है।
मूल पृष्ठ से पृष्ठ का वर्तमान उदाहरण एक्सेस करें - क्या यह ASP.NET में एक स्थिर वर्ग से वर्तमान Page
तक पहुंच बनाना संभव है?एक स्थिर वर्ग
मैं नहीं सोच रहा हूं, क्योंकि Google कोई परिणाम नहीं बदलता है।
तकनीकी रूप से आप अनुरोध के लिए वर्तमान IHttpHandler प्राप्त कर सकते हैं। चूंकि Page लागू करता है, तो आप यह देखने के लिए जांच सकते हैं कि यह एक है या नहीं।
var page = HttpContext.Current.CurrentHandler as Page;
if(page != null){
// Do something with page
}
आप HttpContext.CurrentHandler
का उपयोग अनुरोध के लिए वर्तमान HttpHandler वापस जाने के लिए कर सकते हैं। एक पृष्ठ वर्ग बस एक जटिल प्रकार का हैट्प हैंडलर है।
हालांकि पृष्ठ गुणों से संबंधित किसी भी चीज़ तक पहुंचने के लिए, आपको Page
टाइप करने के लिए परिणाम डालना होगा।
ईमानदारी से हालांकि, यदि संभव हो तो मैं जेफ का दृष्टिकोण लेता हूं, क्योंकि विधि कॉल में पृष्ठ संदर्भ इंजेक्शन करके, आपकी विधि अधिक परीक्षण योग्य है (भरोसेमंद नहीं है, क्योंकि आप सीधे पृष्ठ का उपयोग कर सकते हैं)। HttpContext के साथ कुछ भी करने पर निर्भर करते हुए आपका कोड अवांछनीय बना देता है। शायद आप ऐसी परिस्थिति में हैं जहां आप इस तरह की विधि तैयार नहीं कर सकते हैं, लेकिन यह वही तरीका होगा जिसे मैं करना पसंद करूंगा।
सहमत हैं, मुझे एक मजबूत संदेह है कि httpcontext एक गड़बड़ी है जब यह थ्रेडिंग के साथ आता है। – maxp
स्थिर पृष्ठ में कॉल करने वाली विधि के पैरामीटर के रूप में वर्तमान पृष्ठ को पारित करने का सबसे आसान तरीका है।
हाँ शायद 'साफ-सुथरा', शर्मिंदा होने के बारे में 5 विधि कॉल गहरी ... – maxp
यक! HttpContext.Current तब तक है, जब तक आपको रिफैक्टर करने का मौका न मिले। –
संबंधित प्रश्न: https://stackoverflow.com/q/58123/1475331। –