2013-02-15 56 views
15

मुझे आश्चर्य है कि DefaultWebProxy और GetSystemWebProxy() के बीच मुख्य अंतर क्या हैं। एमएसडीएन पर कुछ विवरण हैं, लेकिन मुझे अभी भी लगता है कि बेहतर समझने के लिए मुझे थोड़ा और विवरण चाहिए।WebRequest.DefaultWebProxy और WebRequest.GetSystemWebProxy() के बीच क्या अंतर है?

इसके अलावा, चलो कहते हैं कि मैं अपने सी # WinForm आवेदन

  1. प्रॉक्सी सेटिंग्स
  2. उपयोग प्रणाली डिफ़ॉल्ट सेटिंग्स
  3. कोई प्रॉक्सी

तब स्वत: पता लगाएं पर प्रॉक्सी कॉन्फ़िगरेशन के लिए निम्न विकल्प हैं चलो कौन सा तरीका किस विकल्प पर जाता है? क्या यह कहना सही है कि Auto-detect proxy कुछ हद तक Use system default सेटिंग्स के बराबर है?

+0

+1, अच्छा सवाल! –

उत्तर

12

MSDN articleWebRequest.DefaultWebProxy के लिए, यह संपत्ति app.config फ़ाइल में निर्दिष्ट प्रॉक्सी जानकारी प्रदान करेगी। ऐसा लगता है कि .NET Framework v3.5 MSDN Article इस विशिष्ट विवरण को याद कर रहा है।

जहां तक ​​WebRequest.GetSystemWebProxy() जाता है, MSDN article for it बताता है कि यह विधि सिस्टम-व्यापी कॉन्फ़िगर प्रॉक्सी (नियंत्रण कक्ष> इंटरनेट विकल्प) प्रदान करेगी।


यह कैसे मैं आप को लागू तीन विकल्प उल्लिखित सुझाव है:

  1. प्रॉक्सी सेटिंग्स
    • स्वत: पता लगाएं अपनी खुद की प्रॉक्सी खोज तर्क को लागू करें; या
    • बदलें प्रणाली आपके आवेदन की सेटिंग से मेल खाते हैं, और प्रयोग WebRequest.GetSystemWebProxy() (मैं इस दृष्टिकोण की सिफारिश नहीं होगा) के लिए सेटिंग; या
    • पसंदीदा में यह विकल्प शामिल नहीं है, और उपयोगकर्ता को "सिस्टम डिफ़ॉल्ट सेटिंग्स का उपयोग करें" विकल्प के साथ संबंधित सिस्टम-व्यापी सेटिंग का उपयोग करने दें;
  2. उपयोग प्रणाली डिफ़ॉल्ट सेटिंग्स
    • उपयोग WebRequest.GetSystemWebProxy();
  3. कोई प्रॉक्सी
    • WebRequest.DefaultWebProxy और WebRequest.Proxy गुण अनसेट करने के लिए सुनिश्चित करना;

संपादित करें: कोई प्रॉक्सी app.config में कॉन्फ़िगर किया गया है हैंWebRequest.DefaultWebRequest शुरू में WebRequest.GetSystemWebProxy() रूप में एक ही (कम से कम .NET 4.5 के लिए) है।
comment के लिए गेब्रियलियस के लिए धन्यवाद।

+0

आपके उत्तर के लिए धन्यवाद, जेसी। मैं लागू करने के तरीकों के बारे में सोचूंगा। चलो देखते हैं कि दूसरों को क्या कहना है। – woodykiddy

+0

@woodykiddy आपका स्वागत है, हालांकि, क्या आप जो कुछ हासिल करने की कोशिश कर रहे हैं उस पर आप कुछ और बता सकते हैं? इसके अतिरिक्त, क्या आप 'डिफ़ॉल्ट वेबप्रोजेक्सी' और 'GetSystemWebProxy()' के बीच अंतरों से संबंधित विवरणों को परिभाषित करना चाहते हैं? – Jesse

+0

मैं विकल्प प्रदान करने की कोशिश कर रहा हूं जहां उपयोगकर्ता चुन सकता है कि प्रॉक्सी का उपयोग करना है या नहीं। वेब सेवा कॉल करने से पहले क्लाइंट एप्लिकेशन प्रॉक्सी सेटिंग्स लागू करेगा। जैसा कि मैंने पहले अपनी पोस्ट में कहा था, मैं बस थोड़ा सा महसूस कर रहा हूं। ऐसा लगता है कि ये दो एपीआई काफी वही चीज़ पेश करते हैं। – woodykiddy