2013-11-13 4 views
0

Я попытался отобразить отображение результатов LINQ-запроса в текстовом поле. У меня есть OID, readTime, DeviceID, a_TankLevel1, a_TankLevel2 в таблице SensorDataPackages. Я хочу отобразить значение некоторого поля в текстовом поле после запроса, как этотОтображение результата запроса linq в метке

Textbox1 = a_TankLevel1; 
Textbox2 = a_TankLevel2; 

и так далее.

я получаю «SensorData не пусто» .Query работает.

// Я создал новый modeldataset

private string istDeviceID = ""; 

    MyWebApplication.MyClasses.ModelDataContext MyNewModel= new MyWebApplication.MyClasses.ModelDataContext(); 

     this.istDeviceID = ComboBox1.SelectedItem.GetValue("DeviceID").ToString(); 

     DateTime SensorDateNow= DateTime.Now; 
     DateTime SensorDate= DateTime.Now.AddDays(-7); 

     var SensorData = (from Sensor in MyNewModel.SensorDataPackages 
     where Sensor.DeviceID == int.Parse(istDeviceID) 
     where Sensor.readTime.Date >= SensorDateNow.Date 
     where Sensor.readTime.Date <= SensorDate.Date 
     select Sensor).ToList();     

     if (SensorData.Count > 0)   
     { 
      MessageBox.Show("SensorData is not empty");    
      textbox1.text = SensorData.?????? // I need help here !!! 
     } 
     else 
     { 
      MessageBox.Show("SensorData is empty"); 
     } 

ответ

3

Попробуйте String.Join

textbox1.text= String.Join(",", SensorData.Select(a => a.ToString())); 

Это при условии, что ваш объект SensorData имеет переопределены ToString()

EDIT:

получить последнее значение попробуйте это

textbox1.text= SensorData.Last().a_TankLevel1.ToString(); 
+0

Я попробовал textbox1.text = String.Join (",", SensorData.Select (a => a.ToString()); и textbox1.text = String.Join (",", SensorData.Select (a => a.a_TankLevel1.ToString())); но textbot пуст. – Mhmt

+0

можете ли вы разместить то, что находится в 'ToString' для' SensorData' –

+0

Textbox1.Text = SensorData.ToString(); result: System.Collections.Generic.List'1 [MyWebApplication.MyClasess.SensorDataPackage] – Mhmt

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