.NET

2008-11-18 10 views
9

में वेब सेवा के अंदर क्वेरी स्ट्रिंग (अनुरोध अनुरोध सरणी) प्राप्त करना मैं वेब सेवा के अंदर मानक ASP.NET अनुरोध ऑब्जेक्ट में निहित .net क्वेरी स्ट्रिंग तक पहुंचने का कोई तरीका ढूंढ रहा हूं। दूसरे शब्दों में मैं इस यूआरएल को एक सोप वेब सेवा सेट करता है, तो:.NET

http://localhost/service.asmx?id=2

मैं पर पहुंच सकता है आईडी चर प्राप्त करें?

उत्तर

17

मैंने बस एएसएमएक्स फ़ाइल में संदर्भ के "अनुरोध" की तलाश की और मैंने इसे देखा। लेकिन मुझे यकीन नहीं है कि यह सही है या नहीं।

this.Context.Request.QueryString["id"]; 
+0

यह किस वस्तु का प्रतिनिधित्व करता है? – AnthonyWJones

+0

webservice वर्ग। इस नमूने में यह "सेवा" है; –

2

चूंकि आप पूछते हैं, मुझे लगता है कि कोई HttpContext.Current.Request नहीं है?

2

जबकि एक ही समस्या मैं अलग दृष्टिकोण लेने का फैसला किया के समाधान के लिए खोज। मेरी क्वेरी स्ट्रिंग को कई चर के साथ पैक किया गया था और चूंकि मैं वेब सेवा से क्वेरी स्ट्रिंग डेटा तक पहुंच नहीं पा रहा था, और मैं प्रत्येक क्वेरी स्ट्रिंग वैरिएबल को एक अलग पैरामीटर के रूप में भी नहीं भेजना चाहता था, मैंने अपनी वेब विधि को उम्मीद करने के लिए तैयार किया एक अतिरिक्त स्ट्रिंग पैरामीटर।

पैरामीटर था विंडो स्थान .aspx पेज

एक बार मैं अपने वेब सेवा में यूआरएल था, बाकी आगे काफी stright था

Uri myRef = new Uri(stringMyWindowLocationParameter); 
System.Collections.Specialized.NameValueCollection mojQuery = HttpUtility.ParseQueryString(myRef.Query); 
पर मेरी जावास्क्रिप्ट समारोह में (पूरे पृष्ठ का यूआरएल)

अब मेरी क्वेरी स्ट्रिंग myRef ऑब्जेक्ट के अंदर निहित है और यह कैसे मैं इसे कहते है

// Instead trying to request query string like this 
string myId = HttpContext.Current.Request.QueryString["id"]; 

// ... I called it like this 
string myId = myRef["id"]; 

शायद यह सबसे शानदार तरीका नहीं है लेकिन यह मेरी समस्या का समाधान करता है।

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

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