我在asituation,我必须使用参数从asp重定向到aspx页面。我尝试了很多选项,但重定向工作正常,但我的aspx.cs页面中没有这个值。
下面是我的asp
Dim objASPError,strRemoteIP
Set objASPError = Server.GetLastError
以下内容无法使用参数
'Response.Status = "301 Moved Permanently"
'Response.AddHeader "Location", "/404.aspx? err="+objASPError
'Response.End
我甚至尝试过设置hiddenn值并访问aspx.cs中的表单元素
document.getElementById("hdnErr").value=objASPError
以下内容也不适用于objASPError
response.Redirect("/404.aspx?err="&objASPError)
<html>
<head>
<title></title>
</head>
<body>
<form method="post" action="404.aspx">
<input type="hidden" id="hdnErr" />
</form>
</body>
</html>
我的aspx.cs
Label lbl = new Label();
Exception ex = Server.GetLastError();
string message=string.Empty;
if(Request.Form["hdnErr"] != null)
{
message = Request.Form["hdnErr"].ToString();
}
if (Request.QueryString["err"] != null)
{
String temp = Request.QueryString["err"].ToString();
lbl.Text = temp;
}
由于
问题 我理解通过querystring发送值不是最好的选择...如何将错误对象从asp发送到aspx ..
答案 0 :(得分:0)
尝试更改
<input type="hidden" id="hdnErr" />
到
<input type="hidden" name="hdnErr" />
此外,Server.GetLastError返回一个对象,因此您无法将其与字符串组合。看一下msdn doc中的例子。