DataGrid1.DataSource = hosmag.lstduanxinInfo( (TextBox1.Text=="")?null:TextBox1.Text, ...........调用了BLL层的方法,到这步,他根本不进BLL层 直接报错:用户代码未处理NullReferenceException 未将对象引用设置到对象的实例

解决方案 »

  1.   

     hosmag.lstduanxinInfo(TextBox1.Text==""?string.Empty:TextBox1.Text
    试试
      

  2.   


    好吧 我这样写 也是错 跟你说的那个 没关系的!
    DataGrid1.DataSource = hosmag.lstduanxinInfo( TextBox1.Text, 
                        TextBox2.Text,。
      

  3.   


    就是  DataGrid1.DataSource = hosmag.lstduanxinInfo( TextBox1.Text, 。。
    绑定的这句 我F11不进去,到这边 我F11  就报错!明白???
      

  4.   

    ..........LZ,这样我们也看不出问题呀、、、你换个其他的试一试?比如GridView 啥子的?
      

  5.   


    我 所有的 都是 datagrid   好好的干嘛 换gridview????  要 想着 去解决问题  ,不是 去避免 问题 ,汗 这样 一换 我得  换多长时间!!!!
      

  6.   

      public List<Hospitalmenzhen> lstduanxin(string CustNamer,string menzhenkeshi,string menzhendoctor,string Custcity,string Custfrom,string menzhenresult,string menzhenshoushu,string menzhenyesoron,string menzhendaybegin,string menzhendayend)
           {
               DBHelper db = new DBHelper();
               Hospitalmenzhen ho = null;
               List<Hospitalmenzhen> lsthosp = new List<Hospitalmenzhen>();
               db.AddParmeter("@CustNamer", DbType.String, ParameterDirection.Input, CustNamer, 50);
               db.AddParmeter("@menzhenkeshi", DbType.String, ParameterDirection.Input, menzhenkeshi, 50);
               db.AddParmeter("@menzhendoctor", DbType.String, ParameterDirection.Input, menzhendoctor, 50);
               db.AddParmeter("@Custcity", DbType.String, ParameterDirection.Input, Custcity, 50);
               db.AddParmeter("@Custfrom", DbType.String, ParameterDirection.Input, Custfrom, 50);
               db.AddParmeter("@menzhenresult", DbType.String, ParameterDirection.Input, menzhenresult, 50);
               db.AddParmeter("@menzhenshoushu", DbType.String, ParameterDirection.Input, menzhenshoushu, 50);
               db.AddParmeter("@menzhenyesoron", DbType.String, ParameterDirection.Input, menzhenyesoron, 50);
               db.AddParmeter("@menzhendaybegin", DbType.String, ParameterDirection.Input, menzhendaybegin, 50);
               db.AddParmeter("@menzhendayend", DbType.String, ParameterDirection.Input, menzhendayend, 50);
               using (IDataReader read=db.ExcuteDataRead("pro_duanxin",CommandType.StoredProcedure))
               {
                   while (read.Read ())
                {
                        ho = new Hospitalmenzhen();
                        ho.Custcity = read["Custcity"].ToString();
                        ho.CustDepartment = read["CustDepartment"].ToString();
                        ho.Custfrom = read["Custfrom"].ToString();
                        ho.custID = read["custID"].ToString();
                        ho.CustNamer = read["CustNamer"].ToString();
                        ho.Custsex = read["Custsex"].ToString();
                        ho.custzhuanzhen = read["custzhuanzhen"].ToString();
                        ho.daoyiFlag = read["daoyiFlag"].ToString();
                        ho.menzhenasker = read["menzhenasker"].ToString();
                        ho.menzhenbianhao = read["menzhenbianhao"].ToString();
                        ho.menzhenByFistillID = Convert.ToInt32(read["menzhenByFistillID"]);
                        ho.menzhenchina = Convert.ToDecimal(read["menzhenchina"]);
                        ho.menzhencurer = Convert.ToDecimal(read["menzhencurer"]);
                        ho.menzhencustID = read["menzhencustID"].ToString();
                        ho.menzhenday = read["menzhenday"].ToString();
                        ho.menzhenday1 = read["menzhenday1"].ToString();
                        ho.menzhenDelFlag = read["menzhenDelFlag"].ToString();
                        ho.menzhendoctor = read["menzhendoctor"].ToString();
                        ho.menzhenexam = Convert.ToDecimal(read["menzhenexam"]);
                        ho.menzhenFlag = read["menzhenFlag"].ToString();
                        ho.menzhenforgian = Convert.ToDecimal(read["menzhenforgian"]);
                        ho.menzhenfuzhendate = read["menzhenfuzhendate"].ToString();
                        ho.menzhenID = Convert.ToInt32(read["menzhenID"]);
                        ho.menzhenkeshi = read["menzhenkeshi"].ToString();
                        ho.menzhenkeshi1 = read["menzhenkeshi1"].ToString();
                        ho.menzhenresult = read["menzhenresult"].ToString();
                        ho.menzhenset = Convert.ToDecimal(read["menzhenset"]);
                        ho.menzhenshoushu = read["menzhenshoushu"].ToString();
                        ho.menzhenshoushufeiyong = Convert.ToDecimal(read["menzhenshoushufeiyong"]);
                        ho.menzhentime = read["menzhentime"].ToString();
                        ho.menzhentishicontent = read["menzhentishicontent"].ToString();
                        ho.menzhenyesoron = read["menzhenyesoron"].ToString();
                        lsthosp.Add(ho);
                }
                   
               }
               return lsthosp;
           }BLL层调用:
     public List<Hospitalmenzhen> lstduanxinInfo(string CustNamer, string menzhenkeshi, string menzhendoctor, string Custcity, string Custfrom, string menzhenresult, string menzhenshoushu, string menzhenyesoron, string menzhendaybegin, string menzhendayend)
           {
               return hosserver.lstduanxin( CustNamer, menzhenkeshi, menzhendoctor, Custcity, Custfrom, menzhenresult, menzhenshoushu, menzhenyesoron, menzhendaybegin, menzhendayend);
           }
    然后是 绑定: DataGrid1.DataSource = hosmag.lstduanxinInfo( TextBox1.Text, 
                        TextBox2.Text,
                        TextBox3.Text,存储过程是正确的,
      

  7.   

    hosmag把这重新定义下,然后再编译试试,看智能感应还存在吗
      

  8.   

    你断点报的错。 到底是hosmag 这个对象没实例化还是参数有问题,你一个个看清楚
      

  9.   

    db.AddParmeter("@CustNamer", DbType.String, ParameterDirection.Input, CustNamer, 50);
     
    应该是这句的问题,你改一下试试!
    db.AddParmeter("@CustNamer", DbType.String, ParameterDirection.Input, string.IsNullOrEmpty(CustNamer) ? (object)DBNull.Value : (object)CustNamer, 50);
     
      

  10.   

    db.AddParmeter("@CustNamer", DbType.String, ParameterDirection.Input, CustNamer, 50);
     
    应该是这句的问题,你改一下试试!
    db.AddParmeter("@CustNamer", DbType.String, ParameterDirection.Input, string.IsNullOrEmpty(CustNamer) ? (object)DBNull.Value : (object)CustNamer, 50);
      

  11.   


    参数 没问题!!!!!进不去!!!!!!还没到 参数呢 ,就报错了!!!!明白???我感觉 是 hosmag 实例化 有问题,可是 又 没什么 问题  就 new 下 啊 !