2013-02-21 60 views
16

मैं नीचे उल्लेख लिंक के माध्यम से चले गए हैं में स्थानांतरण बनाम,TransferRequest ASP.Net

iis forum और HttpModules & Server.Transfer/Server.TransferRequest/RewritePath problems। लेकिन इन स्थानांतरण विधियों के पीछे अवधारणा को पकड़ने में असमर्थ।

वे कैसे काम करते हैं? और किसको अलग-अलग परिस्थितियों में पसंद किया जाता है?

क्या कोई मुझे एएसपीनेट और इसकी भूमिकाओं में सर्वर साइड ट्रांसफर के लिए ट्रांसफररक्वेट बनाम स्थानांतरण विधियों की व्याख्या कर सकता है?

अग्रिम धन्यवाद

उत्तर

17

HttpServerUtility.Transfer वर्तमान पृष्ठ के निष्पादन को समाप्त करता है और प्रदान किए गए यूआरएल के निष्पादन को शुरू करता है। यह मूल रूप से प्रदान किए गए यूआरएल के अनुरूप एक नया एएसपी.NET पृष्ठ (या एक स्थिर फ़ाइल परोसता है) को मानचित्रित करता है और निष्पादित करता है। यह नए यूआरएल में नई कॉन्फ़िगरेशन लागू किए बिना, या नए यूआरएल के लिए आईआईएस मॉड्यूल को फिर से चलाने के बिना, मौजूदा अनुरोध पाइपलाइन में यह जगह है। इसकी वजह से, यह बहुत तेज़ है, लेकिन यह टीआरक्यू के साथ कई परिदृश्यों को भी रोकता है।

HttpServerUtility.TransferRequest प्रदत्त यूआरएल का एक असीमित निष्पादन करता है। यह कवर के तहत एक पूर्ण आईआईएस बाल अनुरोध है, जो इसे नए अनुरोध के लिए पूरी अनुरोध पाइपलाइन को फिर से चलाने की अनुमति देता है जैसे कि यह एक अलग अनुरोध था, इसके लिए सही कॉन्फ़िगरेशन प्राप्त करना, और सभी सामान्य आईआईएस मॉड्यूल चलाना प्रमाणीकरण, प्रमाणीकरण इत्यादि सहित, उदाहरण के लिए, आईआईएस पिछले यूआरएल के विपरीत, नए यूआरएल के लिए प्राधिकरण नियम लागू करेगा।

6

TransferRequest पूरे अनुरोध पाइप लाइन पुनः चलाता है जैसे कि यह एक अलग अनुरोध कर रहे थे। इसका मतलब है कि आईआईएस और एएसपी.नेट मॉड्यूल फिर से लागू होते हैं; नए यूआरएल के लिए प्रमाणीकरण और प्रमाणीकरण नियमों को सम्मानित किया जाएगा। ध्यान दें कि ट्रांसफररक्वैस्ट को आईआईएस 7+ के एकीकृत पाइपलाइन मोड की आवश्यकता है, और स्थानांतरण एएसपी पेज या किसी अन्य संसाधन जैसे एक्सएमएल फाइल के लिए हो सकता है।

Transfer सर्वर पर एक एएसपी पृष्ठ से दूसरे एएसपी पृष्ठ पर निष्पादन स्थानांतरित करता है। TransferRequest के विपरीत, आईआईएस और एएसपी.NET यह सत्यापित नहीं करेगा कि वर्तमान उपयोगकर्ता ट्रांसफर विधि द्वारा प्रदत्त संसाधन को देखने के लिए अधिकृत है। यदि आपको पुनः प्राधिकरण को मजबूर करने की आवश्यकता है, और एकीकृत पाइपलाइन मोड एक विकल्प नहीं है, तो स्थानांतरण विधि के बजाय Redirect पर कॉल करें। रीडायरेक्ट क्लाइंट-साइड रीडायरेक्ट को ट्रिगर करता है ताकि नया अनुरोध आईआईएस और एएसपी.नेट के सभी प्रमाणीकरण और प्रमाणीकरण तर्क के अधीन हो।