2011-05-06 11 views
5

मैं एक यूआरएल स्ट्रिंग मिलता है और यह एक कानूनी http यूआरएल को बदलने के लिए करना चाहते हैं:मैं कैसे एएसपी MVC में एक पूरा URL स्ट्रिंग एनकोड

उदाहरण के लिए:

"http://one/two/three%four/five#five?six seven""http://one/two/three%25four/five%23five?six%20seven"

में बदल जाते हैं चाहिए

हालांकि, HttpUtility.UrlEncode मदद नहीं करता है, क्योंकि यह संपूर्ण स्ट्रिंग को एन्कोड करता है (कानूनी "://" सहित)।

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

उत्तर

4

देखें कि आप क्या चाहते हैं?

Uri uri = new Uri("http://one/two/three%four/#five?six seven"); 
    string url = uri.AbsoluteUri + uri.Fragment; 
    // url will be "http://one/two/three%25four/#five?six%20seven#five?six%20seven" 
+0

किसी भी यूआरएल के लिए इस समाधान मान्य है? –

0

कैसे बंटवारे और फिर से शामिल के बारे में:

string url = "http://one/two/three%four/#five?six seven"; 
string encodedUrl = "http://" + string.Join("/", url.Substring(7).Split('/').Select(part => HttpUtility.UrlEncode(part)).ToArray());