2010-01-29 15 views
33

मैं एएसपी.NET के साथ सी # का उपयोग कर रहा हूं।एक पोस्ट वैरिएबल प्राप्त करना

मैं कैसे जांचूं कि POST चर के रूप में पैरामीटर प्राप्त हुआ है या नहीं?

यदि पीओएसटी के माध्यम से या जीईटी के माध्यम से पैरामीटर भेजा गया है तो मुझे अलग-अलग कार्रवाइयां करने की ज़रूरत है। प्राप्त मूल्यों के लिए

उत्तर

76

उपयोग करें:

Request.QueryString["key"] 
पोस्ट के लिए

और यह

Request.Form["key"] 

को महत्व देता है इसके अलावा, इस लिए यदि आप कोई परवाह नहीं है कि क्या यह GET या POST, या से आता है काम करेंगे HttpContext.Items संग्रह:

Request["key"] 

नोट करने के लिए (यदि आप इसे की जरूरत है) एक और बात आप के प्रकार की जांच कर सकते है उपयोग करके अनुरोध:

Request.RequestType 

पृष्ठ (आमतौर पर प्राप्त या पोस्ट) तक पहुंचने के लिए उपयोग की जाने वाली क्रिया का कौन सा क्रिया होगा। Request.IsPostBack आमतौर पर यह जांचने के लिए काम करेगा, लेकिन केवल अगर POST अनुरोध में एएसपी.NET ढांचे द्वारा पृष्ठ में जोड़े गए छिपे हुए फ़ील्ड शामिल हैं।

+2

मैं अनुरोध ["कुंजी"] का उपयोग नहीं करता ... क्योंकि यह आइटम संग्रह है और पृष्ठ संदर्भ में संग्रहीत सभी वस्तुओं की एक सूची प्राप्त करता है। इसमें कुकी मूल्य भी शामिल होंगे। – Darren

5

उपयोग

Request.Form []

पोस्ट चर के लिए

,

Request.QueryString []

प्राप्त के लिए

2

Request.Form और Request.QueryString का उपयोग कर और अपने विशिष्ट परिदृश्य के आधार पर करने के लिए इसके अलावा, यह भी Page के IsPostBack संपत्ति की जांच करने के लिए उपयोगी हो सकता है।

if (Page.IsPostBack) 
{ 
    // HTTP Post 
} 
else 
{ 
    // HTTP Get 
} 
+1

सही नहीं है, अगर फॉर्म या तो GET या POST का उपयोग करके भेजा जाता है तो IsPostBack सत्य है। नामकरण कार्यक्षमता को प्रतिबिंबित नहीं करता है – sarepta

संबंधित मुद्दे