海东的技术资料

  博客园 :: 首页 ::  :: 联系 :: 订阅 订阅 :: 管理 ::
  205 随笔 :: 22 文章 :: 722 评论 :: 68 引用

在ASP.NET 2.0中,对于跨页提交已经有了非常合理的解决方案
下面是一个示例:
BeginPage.aspx: 请注意Button1的PostBackUrl属性设置

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    public string Name
    
{
        get
        
{
            
return this.TextBox1.Text;
        }

    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>Untitled Page</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:Label ID="Label1" runat="server" Text="请输入姓名" Width="183px"></asp:Label>
        
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        
<asp:Button ID="Button1" runat="server"  Text="提交" PostBackUrl="~/EndPage.aspx" /></div>
    
</form>
</body>
</html>

 EndPage.aspx:请注意PreviousPageType的属性设置

<%@ Page Language="C#" %>
<%@ PreviousPageType VirtualPath="~/SourcePage.aspx" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    
    protected 
void Page_Load(object sender, EventArgs e)
    
{
        
this.Label1.Text = PreviousPage.Name;
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>Untitled Page</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:Label ID="Label1" runat="server" ></asp:Label>
    
    
</div>
    
</form>
</body>
</html>

OK,就通过这么简单的两个属性设置,就可以非常方便的得到跨页提交的特性
posted on 2005-10-26 16:33 高海东 阅读(2544) 评论(10)  编辑 收藏 网摘 所属分类: ASP.NET 2.0

评论

搞不懂这样做的好处
  回复  引用    

#2楼 2005-10-26 22:59 microhf[未注册用户]
传递参数,这比QueryString好。
  回复  引用    

#3楼 2005-10-26 23:07 cnark[未注册用户]
多页面对应一个后台程序,变的简单了
  回复  引用    

好,少走弯路了。
  回复  引用    

在ASP.NET 2.0中,如何打开一个新的窗口,并且老的窗口不变?
  回复  引用    

#6楼[楼主] 2005-12-26 20:20 高海东      
可以弹出模式窗口
  回复  引用  查看    

#7楼 2006-01-05 19:46 Jemmy[未注册用户]
querystring不能直接传递对象和大量数据,也不适合传递敏感数据
这个好

  回复  引用    

#8楼 2006-01-05 19:49 Jemmy[未注册用户]
若仅传递控件数据,可以不用@PreviousPageType, @PreviousPageType是为了保证Target page 能使用PerviousPage 的公有成员属性/变量
  回复  引用    

#9楼 2006-04-11 06:08 lilo[未注册用户]
早干吗去了,不知道MSC以前怎么想的.
  回复  引用    

#10楼 2006-04-11 06:12 lilo[未注册用户]
这个问题我今天就遇到了,很是头疼,另外server.transfer()也不能实现跨页提交的功能,对于数据保密怎样处理.
  回复  引用    




发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 262511




相关文章:

相关链接: