none
session和request的问题。 RRS feed

  • 问题

  • 用session来传值,如果打开两个窗口,就会被覆盖。
    用request来传值呢,又可以作假。
    请问应该怎样做呢?
    if (Request["送样单号"] == null || string.IsNullOrWhiteSpace(Request["送样单号"].ToString()))
                {
                    ClientScript.RegisterStartupScript(Page.GetType(), "", "<script language=javascript>window.close();</script>");
                }

    // Session["送样单号"].ToString();用session会导致一次打开多个窗体,相互覆盖。


    • 已编辑 彭123 2014年4月19日 7:01
    2014年4月19日 7:00

答案

  • 用session来传值,避免覆盖原来session的值,你最好使用Session["xxx"]="xxx",唯一特殊的标识来定义Session,比如使用SessionID.  避免用户修改Request传的值,你能考虑在后台写代码直接传值,跳转URL,如:

    Server.Transfer ,Response.Redirect();

    你也能参考下面这个链接了解更多的传值方式:

    ASP.NET页面传值有哪几种方式


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已标记为答案 彭123 2014年4月21日 4:20
    2014年4月21日 1:42
    版主

全部回复

  • 请问有什么好办法吗?就是打开一个窗体编辑。如果用request传值,用户可以修改。用session呢,如果打开多个窗体,session之间会相互覆盖?
    2014年4月19日 7:02
  • 用session来传值,避免覆盖原来session的值,你最好使用Session["xxx"]="xxx",唯一特殊的标识来定义Session,比如使用SessionID.  避免用户修改Request传的值,你能考虑在后台写代码直接传值,跳转URL,如:

    Server.Transfer ,Response.Redirect();

    你也能参考下面这个链接了解更多的传值方式:

    ASP.NET页面传值有哪几种方式


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已标记为答案 彭123 2014年4月21日 4:20
    2014年4月21日 1:42
    版主