ResultHandler
/// <summary>
/// Summary description for ResultHandler
/// </summary>
public class ResultHandler :System.Web.UI.Page, IHttpHandler
{
bool IHttpHandler.IsReusable
{
get
{
return false;
}
}
void IHttpHandler.ProcessRequest(HttpContext context)
{
foreach (var key in context.Request.Form.AllKeys)
{
context.Response.Write(string.Format("key:{0}{2}value:{1}{2}{2}", key, context.Request.Form[key], System.Environment.NewLine));
}
}
}
ReflectForm.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server" target="_blank">
<div style="width:300px;">
<fieldset>
<legend>我是表单</legend>
<br />
<table>
<tr>
<td align="center">
name
</td>
<td style="width: 10px;">
</td>
<td align="center">
value
</td>
</tr>
<tr>
<td align="center">
txtName
</td>
<td style="width: 10px;">
</td>
<td>
<input type="text" name="txtName" />
</td>
</tr>
<tr>
<td align="center">
<%=txt.UniqueID %>
</td>
<td style="width: 10px;">
</td>
<td>
<asp:TextBox ID="txt" runat="server"></asp:TextBox>
</td>
</tr>
</table>
<br />
<div align="right">
<asp:Button ID="btn" runat="server" Text="默认" OnClick="btn_Click" />
<asp:Button ID="btnAdd" runat="server" Text="追加" OnClick="btnAdd_Click" />
</div>
<br />
</fieldset>
<div>
</form>
</body>
</html>
ReflectForm.aspx.cs
protected void btn_Click(object sender, EventArgs e)
{
Server.Transfer("ResultHandler.ashx", true);
}
protected void btnAdd_Click(object sender, EventArgs e)
{
Type type = Request.Form.GetType();
type.GetMethod("MakeReadWrite", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(Request.Form, null);
Request.Form.Add("从我开始", "都是新增");
Request.Form.Add("Sandy", "阿非");
Server.Transfer("ResultHandler.ashx", true);
}
Request.Form
System.Web.HttpValueCollection
NameValueCollection
详细说明待续