if (!IsPostBack)
        {
            string strqry4;            if (Request.QueryString.Count == 0)
            {
                strqry4 = "Select * From label2  order by SDId desc";
            }
            else
            {
                strqry4 = string.Format("Select * From label2 order by SDId desc", Request.QueryString["id"]);
            }
            DataRow drw = DBFun.GetDataRow(strqry4);
            gg.Text = drw["SDgg"].ToString();
        }运行这代码的时候就出现“未将对象引用设置到对象的实例。”

解决方案 »

  1.   

    if(!String.IsNullOrEmpty(strqry4))
    {
        DataRow drw = DBFun.GetDataRow(strqry4);
        if(drw!=null)
        {
                gg.Text = drw["SDgg"].ToString();
        }
    }
      

  2.   

     if (!IsPostBack)
            {
                string strqry4;            if (Request.QueryString.Count == 0)
                {
                    strqry4 = "Select * From label2  order by SDId desc";
                }
                else
                {
                    strqry4 = string.Format("Select * From label2 order by SDId desc", Request.QueryString["id"]);
    //你的这行代码有问题.按照LZ的意思应该是 strqry4 = string.Format("Select * From label2 order by SDId desc where id ={0}", Request.QueryString["id"]);            }
                DataRow drw = DBFun.GetDataRow(strqry4);
                gg.Text = drw["SDgg"].ToString();
            }
      

  3.   

    if (!IsPostBack)
            {
                string strqry4;            if (Request.QueryString["id"]== null)
                {
                    strqry4 = "Select * From label2  order by SDId desc";
                }
                else
                {
                    strqry4 = string.Format("Select * From label2 order by SDId desc", Request.QueryString["id"]);
                    //不知道你这个string.format的sql生成后实现的功能是什么 根本就没必要用到querystring
                }
                DataRow drw = DBFun.GetDataRow(strqry4);
                gg.Text = drw["SDgg"].ToString();
            }
      

  4.   

    if (!IsPostBack)
            {
                string strqry4;            if (Request.QueryString.Count == 0)
                {
                    strqry4 = "Select * From label2  order by SDId desc";
                }
                else
                {
                     if(Request.QueryString["id"]!=null){
                        strqry4 = string.Format("Select * From label2 order by SDId desc", Request.QueryString["id"]);
                     }
                     else{
                       Response.Write("no querystring id");
                       Response.End();
                     }
                }
                DataRow drw = DBFun.GetDataRow(strqry4);
                if(drw==null)
                {
                    Response.Write("drw is null");
                    Response.End();            }
                gg.Text = drw["SDgg"].ToString();
            }
    其实错误调试一下就知道了
      

  5.   

    错误会有提示在哪里出的错,异常堆栈,LZ可以再仔细看一下string.Format("Select * From label2 order by SDId desc", Request.QueryString["id"]);
    ->string.Format没有用嘛gg.Text = drw["SDgg"].ToString();
    ->应该是要判断drw是否为null,为null时肯定会出错
      gg最好也要判断一下,这个时候不知道gg有了没有
      

  6.   

    报这中错误很多中原因 我也碰到过  .ent 不是调试挺强悍的吗 你设置个断电 一点点跟踪调试一下吧。 
      

  7.   

    Request.QueryString["id"] 这个值是不是null
      

  8.   

    drw["SDgg"] == nullnull.ToString() 的结果就是Object reference not set to an instance of an object
    未将对象引用设置到对象的实例
      

  9.   

    我想楼主更需要的是进行调试的技能。
    送楼主一个文章:VS.net调试策略
    http://tech.163.com/special/000915SN/VisualS.html第一章 “认识一下”――VS.NET调试功能简介 1.调试环境介绍 
    3.调试的例子 
    2.调试初步 第二章 .net web应用程序调试 1.调试“三板斧” 
    3.调试javascript 
    2.asp.net中的跟踪和进程调试 
    4.Asp.net调试中的常见问题解答 
    第三章 用日志调试 1.采用日志辅助调试 
    3.Trace和debug类,log4net介绍