2010-05-18 23 views
5

पाने के लिए यूआरएल स्ट्रिंग पार्स करने में कोई तरीका एक यूआरएल स्ट्रिंग से RouteData प्राप्त करने के लिए है?ASP.NET MVC: कैसे RouteData

मैं क्वेरी स्ट्रिंग पैरामीटर के रूप में returlUrl साथ फार्म के लिए लॉग इन किया है। मेरे मार्गों परिभाषित कर रहे हैं के रूप में: {languageCode}/{controller}/{action}

कार्रवाई विधि में LogIn(string returlUrl) returlUrl "एन/घर/संपर्क" आदि मैं मार्गों में बदलाव हो सकते हैं languagePart ऐ बदलने के लिए न string.Replace उपयोग करना चाहते हैं की जरूरत है, की तरह कुछ है भविष्य।

धन्यवाद।

+0

आप इसे पार्स करने के लिए तो आप एक रीडायरेक्ट बाद में कर सकते की जरूरत है? – R0MANARMY

+0

@: मुझे उपयोगकर्ता को returnUrl पर रीडायरेक्ट करने की आवश्यकता है, लेकिन अलग-अलग भाषा में कोड मूल वापसी में थाउआरएल – Feryt

+0

यह अजीब लेकिन ठीक है। – R0MANARMY

उत्तर

1

इस मंचों धागा उपयोगी हो सकता है: http://forums.asp.net/t/1281667.aspx

यह सबसे अच्छा विकल्प मैं अपने सिर के ऊपर से के बारे में सोच सकते हैं। मूल रूप से, आपके यूआरएल स्ट्रिंग के आधार पर RouteTable.Routes.GetRouteData और Mocking HttpContextBase का उपयोग करना।

4

तो यह एक पुराने धागा स्पष्ट रूप से है, लेकिन किसी और गूगल के जरिये इस सवाल का आने के लिए, मैं सिर्फ सुंदर आसानी से कर के लिए एक रास्ता के बारे में एक ब्लॉग पोस्ट में लिखा था। मैं वास्तव में इस सवाल पर एसओ पर आया था जब मैं इसे स्वयं करने का कोई तरीका ढूंढने का प्रयास कर रहा था, लेकिन मुझे वह नहीं मिला जो मुझे पसंद आया, इसलिए मैंने अपना खुद लिखा।

Creating a RouteData Instance from a URL

+0

स्कॉट, ऐसा लगता है कि आपका लिंक टूटा हुआ है। – Khan

+2

लिंक अभी भी टूटा हुआ है। –