本人在程序中通过地址向叶面传送参数格式如下:test.aspx?name=真心英雄&sid=5&aid=6
接受参数值的代码如下
name = Request.QueryString["Name"].ToString();
sid = Convert.ToInt32(Request.QueryString["sid"].ToString());
aid= Convert.ToInt32(Request.QueryString["aid"].ToString());
但是当运行到第二行时系统报错提示:“未将对象引用设置到对象的实例”
是因为没获得到sid这个参数所造成请问如何解决?

解决方案 »

  1.   

    在页面类定义name sid aid这三个变量

    name = Request.QueryString["Name"].ToString(); 
    sid = Convert.ToInt32(Request.QueryString["sid"].ToString()); 
    aid= Convert.ToInt32(Request.QueryString["aid"].ToString()); 
    写到Page_Load中,注意要写到IsPagePostBack之外
      

  2.   

    另外中文最要在传递的时候使用UrlEncode
      

  3.   

    你传的有中文,把中文提前编码一下
    string aaa = HttpUtility.HtmlEncode("真心英雄");
    string bbb = HttpUtility.HtmlDecode(Request.QueryString["name"].ToString());这样试试
      

  4.   

    Name改成name
    name = Request.QueryString["name"].ToString(); 
    另外在web.config里加上这段:
    <globalization requestEncoding="gb2312"   responseEncoding="gb2312" />
    楼主试试!
      

  5.   

    中文最要在传递的时候使用UrlEncode或者你在vweb.config中配置一下,把utf-8 改为gb2312。还有就是,你单步调试一下看出什么问题。