Функция DataTable Select (String) Справка VB .NET - PullRequest
0 голосов
/ 21 июня 2011

Я сделал таблицу данных с 2 столбцами столбцомactionTime и столбцом numberOfTransactions. Я сделал таблицу с заранее определенным временем транзакции и хочу добавить количество транзакций из файла XML. Я прошел через XML-файл и хочу добавить данные в правильную строку. Вот функция:

Function AddRow(ByVal timeOfTransaction As String, ByVal numberOfTransactions As String, ByRef dataTableOfTransactions As DataTable) As String


    Dim row() As DataRow = dataTableOfTransactions.Select("transactionTime = timeOfTransaction")

    If row(0) IsNot Nothing Then
        row(0)("numberOfTransactions") = numberOfTransactions

    End If
    Return Nothing

End Function

Когда я запускаю это, он перезаписывает первый элемент в столбце numberOfTransactions таблицы. Я знаю, что это связано с частью "actionTime = timeOfTransaction ", но я не могу заставить его читать timeOfTransaction как ссылку на строку вместо литерала. Любая помощь приветствуется. Спасибо!

Ответы [ 2 ]

2 голосов
/ 21 июня 2011

Вам нужно написать что-то вроде этого:

Dim row() As DataRow = dataTableOfTransactions.Select("transactionTime=#" & timeOfTransaction & "#")

Но будьте осторожны с форматом даты / месяца или месяца / даты, это зависит от ваших региональных настроек.

0 голосов
/ 21 июня 2011
row(0)("numberOfTransactions") = numberOfTransactions

Тут же вы говорите программе перезаписать это значение числом транзакций.

Если вы хотите это значение, вам нужно установить его в какое-то значение, а не в какое-либо значение.

Кроме того, если вы хотите, чтобы ваш выбор работал правильно, попробуйте сделать это следующим образом

dataTableOfTransactions.Select("transactionTime = " + timeOfTransaction)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...