• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

大佬罗的博客

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

ASP.NET网页之间复杂参数传递方法

      网页之间参数传递方法有许多种,今天我在这里不是讨论有多少种,而是讨论使用最基本的一种,使用它来传递参数。做到参数传递的灵活运用,使用这种最基本的方法,其实可以传递非常复杂的数据。

      比如在a页面取得了初始日前和终止日前然后拼成这样的参数

           tj= " rq>='2009-01-01' and  rq<='2009-06-01‘ "

     再送到b页面去作进行数据库查询的条件,最简单的办法就是使用最基本的参数传递方法

     在a的代码中使用 Page.RegisterClientScriptBlock("Tj", "<script language=javascript>window.open('b.aspx?cs=" + tj + "')</script>")

     在b页面中使用 Dim cs As String = Request.QueryString("cs")   来获取参数

      代码 "select * from tb where " + cs 来使用参数

     如果这样就可以,我就不要在这里讨论了,这样会出问题,tj参数中的" ' "无法被解析,所以参数不能被这样传递。所有你必须使用转义。

      在VB.net中将tj改为如下即可:

        tj= " rq>=\'2009-01-01\' and  rq<=\'2009-06-01\‘ "  就可以了

      在C#.net中将tj改为如下即可:

          tj=@ " rq>=\'2009-01-01\' and  rq<=\'2009-06-01\‘ " 就可以了

       使用这种办法你可以构建非常复杂的参数并进行传递,也就是多个参数的组合传递。

       这里仅是为了说明问题,举了这个例子,如果仅传递两个日期的话,还有别的办法或许更好。

posted on 2009-06-04 16:42  Richinger  阅读(688)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3