2014-01-16 4 views
0

У меня есть код, который проходит через список и помещает значения в 'output1' & 'output2'. Однако то, что происходит, состоит в том, что результаты скручиваются следующим образом: 0307NG77775660NG7778. Как разделить, чтобы я мог включить в db доступа.Разделение списка элементов, необходимых для обработки

Есть 2 колонки в ListView, и они содержат значения в формате:

1-й ряд 0307 - NG7777, 2-й ряд 5660 - 7778 и т.д. Это код рабочего WinForms. Благодаря

 Dim BoxList As New List(Of String) 
     Dim BoxItem As String 
     Dim CustRefList As New List(Of String) 
     Dim CustRef As String 

     For Each item As ListViewItem In Me.lvSelectedItems.Items 
      Dim box As String = item.Text 
      BoxItem = item.SubItems.Item(1).Text 
      BoxList.Add(box) 
      output2 += BoxItem 

      Dim cust As String = item.Text 
      CustRef = item.SubItems.Item(1).Text 
      CustRefList.Add(cust) 
      output1 += CustRef 
     Next 

     output = String.Join(" "c, BoxList.ToArray(), CustRefList.ToArray()) 

     Dim cmd As OleDbCommand = New OleDbCommand("Insert into Temp (temp, [class]) Values ('" & output1 & "', '" & output2 & "')", oledbCnn) 
     dr = cmd.ExecuteReader 
+0

Какой выход вы хотите? Пожалуйста, покажите пример –

+0

, это * звучит как * вместо 'output1 + = username', что вы хотите добавить или обновить базу данных с этими значениями – Plutonix

+0

@Plutonix. Это верно. Спасибо – user1532468

ответ

1

Сделать имя пользователя List(Of String), то просто:

usernameList.Add(username) 'instead of output1 += username 

Когда сделано с петлей, сделайте следующее:

output1 = String.Join(" "c, usernameList.ToArray()) 

Вы можете выбрать присоединиться характер вашего выбора (если вам не нравятся пробелы " ").

EDIT: Пример:

Dim usernameList As New List(Of String) 
Dim session As String 

For Each item As ListViewItem In Me.lvSelectedItems.Items 
    Dim username As String = item.Text 
    session = item.SubItems.Item(1).Text 
    usernameList.Add(username) 
    output2 += session 
Next 

output1 = String.Join(" "c, usernameList.ToArray()) 
+0

Neolisk Я довольно новичок в vb.net и недостаточно продвинутый, чтобы запрограммировать то, что вы предложили. У вас есть пример, который вы могли бы разместить, пожалуйста. Спасибо – user1532468

+0

@ user1532468: Смотрите мой пример. Я преобразовал 'userName', вы можете использовать' session' для обучения. – Neolisk

+0

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

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