एन्कोडेड लिंक ASP.NET से पैरामीटर प्राप्त करना?

प्रोग्रामिंग


मुझे एक एन्कोडेड लिंक से एक पैरामीटर प्राप्त करना है।

लिंक का पहला प्रारूप इस प्रकार है: About.aspx?parameter=bla

लेकिन एक आवश्यकता के कारण लिंक उपयोगकर्ता को भेजा जाता है

About.aspx?parameter%3Dbla

लिंक से About.aspx?parameter%3Dbla मुझे पैरामीटर (bla) मिलना चाहिए।
जब मैं सामान्य रूप से पैरामीटर प्राप्त करने का प्रयास करता हूं
अनुरोध.क्वेरीस्ट्रिंग[“parameter”] या HttpContext.Current.Request[“parameter”] वे शून्य लौट आते हैं।

अग्रिम उत्तरों के लिए धन्यवाद..

समाधान 2

हुआ यह है कि आपकी क्वेरीस्ट्रिंग में “=” को %3D में htmlएन्कोड किया गया है। आपको पहले क्वेरीस्ट्रिंग के साथ इस यूआरएल को बनाने वाली हर चीज़ को ठीक करना होगा ताकि यह ठीक से दिखाई दे About.aspx?parameter=bla

समाधान 3

नमस्ते, यह उचित समाधान नहीं है लेकिन यह आपकी मदद कर सकता है,
बस एन्कोडेड मान को अस्थायी रूप से रखें और फिर इसे डीकोड करें और उस क्वेरी स्ट्रिंग मान का उपयोग करें जैसा आप उपयोग करना चाहते हैं:

सी#
public partial class About : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        var myString = "parameter=\"bla\"";
        var base64EncodedString = Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(myString));
        Response.Redirect("Default.aspx?temp=" + base64EncodedString);
    }
}

अब Default.aspx.cs पेज के लिए कोड:
————————————————

सी#
public partial class _Default : System.Web.UI.Page
  {
      protected void Page_Load(object sender, EventArgs e)
      {
          var originalString = ASCIIEncoding.ASCII.GetString(Convert.FromBase64String(Request.QueryString["temps"]));
          lblShowName.Text = Request.QueryString["parameter"];
      }
  }

コメント

タイトルとURLをコピーしました