首先让我解释一下我的项目。它是一个包含一些我添加到文本框和签名字段中的信息的表单。当您单击签名时,它会将您重定向到您签名的另一个页面,然后返回表单并将签名放入图像中。
重点是当我进入签名页面时,我将表单信息放入 cookie 中,这样当我从签名页面返回时,我可以将它们放回原处。
问题是当它到达另一个页面时,cookie 会在内容方面变得混乱。如果我尝试在页面上写一些简单的希伯来语没有问题。
这是保存 cookie 的代码。
protected void ReCapture(object sender, EventArgs e)
{
string s = "";
foreach (Control c in form1.Controls)
{
if (c.GetType() == typeof(TextBox))
{
s += ((TextBox)c).Text + ":" + ((TextBox)c).ID + ",";
}
if (c.GetType() == typeof(Image))
{
s += ((Image)c).ImageUrl + ":" + ((Image)c).ID + ",";
}
}
Response.Cookies.Remove("Controls");
HttpCookie hc = new HttpCookie("Controls",s.Remove(s.Length - 2));
hc.Expires.AddHours(2);
hc.Path = "/";
Response.Cookies.Add(hc);
Response.Redirect("SignaturePage.aspx?id=" + ((Control)sender).ID);
}
这是签名页代码(几乎没有)
protected void Save(object sender, EventArgs e)
{
Session["TheSignature"] = Request.Form["TheData"];
Response.Redirect("Test.aspx");
}
为什么会这样?