2011-01-28 7 views
33

से वर्तमान पृष्ठ मिलता है। उदाहरण के लिए Default6.aspx मुझे पता है कि मैं निम्नलिखित कर सकता हूं:मैं वर्तमान पृष्ठ को पुन: प्राप्त करने के लिए एक सी # विधि लिखना चाहते यूआरएल

string url = HttpContext.Current.Request.Url.AbsoluteUri; 
// http://localhost:1302/TESTERS/Default6.aspx 

string path = HttpContext.Current.Request.Url.AbsolutePath; 
// /TESTERS/Default6.aspx 

string host = HttpContext.Current.Request.Url.Host; 
// localhost 

लेकिन मैं Default6.aspx कैसे प्राप्त कर सकता हूं? और अगर यूआरएल http://localhost:1302/TESTERS/ है, मेरे विधि default.aspx लौटना चाहिए

उत्तर

40
Path.GetFileName(Request.Url.AbsolutePath) 
+6

सोचो कि होना चाहिए 'Path.GetFileName (Request.Url.AbsolutePath)' के रूप में @ एक ही बात मिल जाएगा – user489998

+0

क्या मैं URL में '#' अगर ..... यानी: http: test.abc.com /sitesposure.aspx#commentfocus ......... क्या यह काम करेगा? –

5

नीचे की तरह एक साधारण समारोह में मदद मिलेगी:

public string GetCurrentPageName() 
{ 
    string sPath = System.Web.HttpContext.Current.Request.Url.AbsolutePath; 
    System.IO.FileInfo oInfo = new System.IO.FileInfo(sPath); 
    string sRet = oInfo.Name; 
    return sRet; 
} 
6

इस प्रयास करें:

path.Substring(path.LastIndexOf("/"); 
+0

BTW, यह "/MyPage.aspx" वापस आ जाएगी। इसके अलावा, VB.Net उपयोगकर्ताओं के लिए आप 'Request.Path.Substring (Request.Path.LastIndexOf ("/"))' – cjbarth

+0

नहीं एक अच्छा तरीका है की कोशिश कर सकते। आप cl0rkster – Mike

12

वर्ग की जरूरत System.Uri है

Dim url As System.Uri = Request.UrlReferrer 
Debug.WriteLine(url.AbsoluteUri) ' => http://www.mysite.com/default.aspx 
Debug.WriteLine(url.AbsolutePath) ' => /default.aspx 
Debug.WriteLine(url.Host)   ' => http:/www.mysite.com 
Debug.WriteLine(url.Port)   ' => 80 
Debug.WriteLine(url.IsLoopback) ' => False 

http://www.devx.com/vb2themax/Tip/18709

1

आप इनमें से कोशिश कर सकते।

string url = "http://localhost:1302/TESTERS/Default6.aspx"; 

string fileName = System.IO.Path.GetFileName(url); 

उम्मीद है कि इससे मदद मिलती है।

1
Request.Url.Segments.Last() 

एक अन्य विकल्प।

+0

यह एक अच्छा तरीका नहीं है। उदाहरण: www.mysite.com/Product/3। पृष्ठ का नाम शायद उत्पाद या यहां तक ​​कि विवरण या अनुक्रमणिका। आपका कथन वापस आ जाएगा 3. पृष्ठ का नाम या यूआरएल से भी सही तर्क नहीं। – Mike

+0

आप किसी भी URL पुनर्लेखन का उपयोग कर रहे हैं, तो मैं निश्चित रूप से सहमत हैं कि यह उपयोगी नहीं है। हालांकि, अगर आप यूआरएल रीराइटिंग का उपयोग कर रहे हैं जैसे कि आपका उदाहरण, प्रश्न में Default6.aspx के बराबर क्या होगा? – cl0rkster

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

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