共同点:
都是重定向;
不同点:
redirect:
1发生在客户端;
2.发送两次请求,第一次请求原始页面,当调用此方法时,创建一个应答头,返回状态码302,第二次请求重定向的页面;
3.得不到任何原始的输出;
3.丢失request中的所有属性;
4.需要client端再发起一个请求;
transfer:
1.很好地解决了这些问题。它是从server端直接向下一页发起请求,不需要client再次发送请求.
2.发生在服务器端,浏览器根本不知道服务器已经执行了一次页面变换;
3. 默认情况下,Server.Transfer方法不会把表单数据或查询字符串从一个页面传递到另一个页面,但只要把该方法的第二个参数设置成True,就可以保留第一个页面的表单数据和查询字符串。
4.EnableViewStateMac=false;防止重新提交数据;
5.Execute()l;