2016-12-21 2 views
0

У меня есть ASPX веб-форма, которая содержит окно и кнопку поиска, как этого enter image description hereКак связать значение набора данных в текстовое поле в asp.net

в коде метода поиска NT называется с помощью веб-метод, как этого

[WebMethod] 
 
     public static void GetNT(string NTID) 
 
     { 
 
      try 
 
      { 
 
       myService.myServiceClient me = new myService.myServiceClient(); 
 
       DataSet dsResult = me.InfobyNt(NTID); 
 
        ware1 _ware1 = new ware1(); 
 
        _ware1.AssignValues(dsResult); 
 
      } 
 
      catch (Exception ex) 
 
      { 
 
       ex.ToString(); 
 
      } 
 
     }
я имел результат на наборе данных и передается в метод assignvalues, там я связать значения, как этот

protected void AssignValues(DataSet dsResult1) 
 
     { 
 
      try 
 
      { 
 
       if (dsResult1 != null && dsResult1.Tables[0].Columns.Count > 1) 
 
       { 
 
        Response.Write(dsResult1.Tables[0].Rows[0]["EMPNAME"].ToString()); 
 
        // foreach(var datas in dsResult.Tables[0].Rows) 
 
        //{ 
 
        string name = dsResult1.Tables[0].Rows[0]["EMPNAME"].ToString(); 
 
        txtFname.Text = name.ToString(); 
 
        txtEmilSgs.Text = Convert.ToString(dsResult1.Tables[0].Rows[0]["EMAILID"]); 
 
        txtPrgSgs.Text = Convert.ToString(dsResult1.Tables[0].Rows[0]["PROGNAME"]); 
 
        txtMname.Text = Convert.ToString(dsResult1.Tables[0].Rows[0]["MANAGERNAME"]); 
 
        //} 
 
       } 
 
       else 
 
       { 
 
        Response.Write("<script>alert('fail')</script>"); 
 
        btnSgsLoad.Text = "Can't find NT ID"; 
 
       } 
 
      } 
 
      catch (Exception ex) 
 
      { 
 
       ex.ToString(); 
 
      } 
 

 
     }
при связывании данных из набора данных ошибки брошена, как это enter image description here

может кто-нибудь помочь мне, как связать набор данных значений в жерех: TextBox

+0

первой проверки, если эта таблица данных содержит имя столбца вы пытаетесь связать? – MMK

+0

Да, у него есть имена столбцов со значениями –

ответ

0

dsResult1.Tables[0].Columns.Count > 1 заменить это dsResult1.Tables[0].Rows.Count > 1, потому что нет никаких оснований считать столбцы таблицы данных, вероятно, ваш набор данных не равен null, но таблицы в вашем наборе данных являются нулевыми, если ваш набор данных имеет таблицы и строки в соответствии с вашим ожиданием, иначе вы получите ту же ошибку. и

string name = dsResult1.Tables[0].Rows[0]["EMPNAME"].ToString(); 

Эта строка получает значение null для строки «name», что является причиной этой ошибки.

Проверки вы набор данных полно заполнение всех записями

+0

Спасибо, у меня были изменения после моего кода, но у меня была такая же проблема, ошибка нулевой ссылки появилась на txtFname.Text –

+0

Я исправил эту проблему, используя InitializeComponent(); метод, но при привязке данных в текстовое поле значение не отображается в текстовое поле. –

+0

Проверьте, что логика заполнения набора данных может дать нулевое значение, поскольку ваш набор данных не заполнен должным образом. DataSet dsResult = me.InfobyNt (NTID); На этой строке введите отладочную и проверите dsresult, заполнив некоторые правильные данные. попытайтесь добавить часы, используя эту строку «dsResult1.Tables [0] .Rows [0] [« EMPNAME »]. ToString()» , если значение равно null или enpty, чем в методе InfobyNt, есть некоторые логические проблемы для заполнения набора данных – Curiousdev

Смежные вопросы