C# 后台POST数据到另一个页面
页面A 后台POST数据到页面B
然后跳转到页面B
因为要隐藏传送的数据 所以不能在跳转的url上参数传值
string data="123";
WebRequest req = WebRequest.Create("http://localhost/SCHXR.Route.TestUtils/Route.aspx");
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(data);
req.ContentLength = bytes.Length;
System.IO.Stream os = req.GetRequestStream();
os.Write(bytes, 0, bytes.Length);
os.Close();
Response.Redirect("B.aspx");
请问在B页面怎么接受我传过去的数据????
------解决方案--------------------建议使用 Server.Transfer("B.aspx") 这个是服务端的转发 Url上是看不到变化的
B页面使用Request["控件ID"] 或者在B页面使用 Page.PreviousPage 对象的FindControl方法
------解决方案--------------------按照你那个写法,data中应该包含参数名称,比如:
string data="name=123";
然后在B中就可以使用Request["name"]接收了
不过还是使用Server.Transfer("B.aspx?name=123")吧,这样跳转是直接在服务器端进行的,url不会发生变化
------解决方案--------------------Post Form到另一个页面
<asp:Button
ID="Button1"
PostBackUrl="~/TargetPage.aspx"
runat="server"
Text="Submit" />
被Post的页面有几种方法取得值,具体做法见:
Cross-Page Posting in ASP.NET Web Pages
http://msdn.microsoft.com/en-us/library/ms178139.aspx