2015-08-13 3 views
0

Это должно быть легко ..VB.net Datatable cell to string

У меня есть данные со значениями типа «1234.5». Когда я конвертирую это в строку, он делит запятую и становится «1234».

For Each row As DataRow In dt.Rows 
    myvalue = row("ColumnName").toString 

    'some other stuff with myvalue 
Next 

Как я могу сделать выводным дисплеем то, что когда-либо было в ячейке, в виде полной строки (включая десятичные числа)? '1234.5'

спасибо!

+0

Dont добавить 'ToString' и убедитесь, что переменная' myvalue' тип данных с удвоенным ... Затем используйте 'Convert.ToString (myvalue) ' – Codexer

+0

Это странная вещь ... Я подтвердил, что это двойной тип. Я попытался отобразить двойную прямую из ячейки, и она все еще усекает десятичные знаки. Это происходит только с одной колонкой. У меня есть и другие столбцы, которые также удваиваются, и они отображают десятичную. Я собираюсь сойти с ума. –

+0

Я понял вопрос. Это связано с тем, как я заполнял данные. Я использовал Microsoft.Jet.OLEDB.4.0 с выражением select *. Странно то, что если первая строка в столбце имеет десятичное число, она сохранит десятичную дробь для остальных строк. Но если первая строка не имеет десятичного числа, она обрезает все остальные строки ... что за черт! Теперь мне нужно выяснить, как отключить это. –

ответ

-1

Как о чем-то вроде этого

Imports System.Data 
 
Module Module1 
 

 
    Sub Main() 
 
     Dim dt As New DataTable 
 

 
     Dim resutls As List(Of String) = dt.AsEnumerable().Select(Function(x) x.Field(Of Double)("ColumnName").ToString()).ToList() 
 

 
    End Sub 
 

 
End Module​