उरी वर्ग चूक पालन करने के लिए OpenID और OAuth के लिए प्राप्त करने के लिए, मैं उरी आरएफसी 3986.कैसे Uri.EscapeDataString आरएफसी के साथ आरएफसी 2396. करने के लिए 3986
के अनुरूप बचने System.Uri class documentation से की जरूरत है:
डिफ़ॉल्ट रूप से, यूआरआई में किसी भी आरक्षित वर्ण आरएफसी 2396. के अनुसार फरार हो रहे हैं यह व्यवहार परिवर्तन अंतर्राष्ट्रीय संसाधन पहचानकर्ता या अंतर्राष्ट्रीय डोमेन नाम पार्स सक्षम हो जाता है, जिसमें यूआरआई में मामला सुरक्षित वर्णों RFC 3986 और RFC 3987 के अनुसार फरार हो रहे हैं।
प्रलेखन भी और कहा गया है इस IRI मोड और इस तरह RFC 3986 व्यवहार को सक्रिय करने के लिए एक machine.config uri खंड तत्व जोड़ मतलब यह है कि यह अपने अनुप्रयोग/web.config करने के लिए फ़ाइल:
<configuration>
<uri>
<idn enabled="All" />
<iriParsing enabled="true" />
</uri>
</configuration>
लेकिन यह मौजूद है कि क्या .config फ़ाइल में या नहीं, मुझे एक .NET 3.5 SP1 ऐप के लिए एक ही (गैर-3 9 86) भागने का व्यवहार मिल रहा है। आरएफसी 3986 नियमों का उपयोग करने के लिए मुझे Uri.EscapeDataString
प्राप्त करने के लिए और क्या करने की आवश्यकता है? (विशेष रूप से आरक्षित पात्रों के रूप में है कि आरएफसी में परिभाषित से बचने के लिए)
मैंने कुछ समुदाय सामग्री को वाक्यविन्यास उदाहरण में टाइपो को फिर से जोड़ा है। –
मैंने इसे आंतरिक रूप से .NET Framework (मैं एमएसएफटी के लिए काम करता हूं) के साथ एक बग के रूप में दायर किया। वे इसे एक प्रलेखन बग के रूप में स्वीकार करते हैं, क्योंकि वास्तव में यह कॉन्फ़िगरेशन सेटिंग * से बचने के संबंध में यूआरआई कक्षा आरएफसी 3986 की तरह व्यवहार नहीं करती है। –