为什么HTML数据会在Response.Redirect()之后转换?

时间:2011-03-22 08:05:26

标签: c# asp.net html redirect response.redirect

我正在使用Session将数据从一个页面传递到另一个页面。数据包含HTML,当我在另一页显示时,我发现它是不同的。

这就是我在Session中放置数据的方式:

Session["omschrijving"] = Server.UrlEncode(lblOmschrijving.Text);

这是我从Session获取数据的方式:

ftbOmschrijving.Text = (string)Session["omschrijving"];
是的,有人能帮帮我吗?提前谢谢。

5 个答案:

答案 0 :(得分:3)

您需要解码编码数据。

·HttpUtility.UrlEncode() - 编码数据

·HttpUtility.UrlDecode() - 解码数据

答案 1 :(得分:2)

因为您UrlEncode数据需要在阅读时对其进行解码。

ftbOmschrijving.Text = Server.UrlDecode(Session["omschrijving"]);

答案 2 :(得分:1)

只需这样做

Session["omschrijving"] = lblOmschrijving.Text;

和检索

一样
ftbOmschrijving.Text = Convert.ToString(Session["omschrijving"]);

答案 3 :(得分:1)

就我而言,您甚至不需要对该数据进行URL编码,因为您将其放在Session变量中。这是一个不必要的过程,需要宝贵的处理器时间。

当您将String值放入Url时,即使您将重定向到某个网址时,会使用UrlEncoding。

删除UrlEncode()UrlDecode(),您应该仍然没问题,并且节省了一些页面加载时间,并且对那些可怜的低带宽冲浪者造成了一点点挫败感!

答案 4 :(得分:0)

我会尝试:

ftbOmschrijving.Text = Server.UrlDecode(Session["omschrijving"]);