rlgentry Ответов: 1

Vb.net сравните строку в datatable и пропустите, если они совпадают


Я создаю список сотрудников с именами сотрудников, перечисленными в разделе отделы.

Исполнительный
Мэри Лэм
Тед Джордж
Бюджет
Денежный Человек
Депутат Павел

My datatable возвращает название отдела для каждого человека. Как я могу получить его только один раз, пока он не изменится?

Я действительно ничего не пробовал, потому что не знаю, как сделать сравнение

Спасибо!

Что я уже пробовал:

VB код
If Not IsPostBack Then
           Dim dt As New DataTable()

           Dim groupid As Integer = 106
           Dim campusname As Label
           Dim campusnameCUrr As String = ""
           Dim campusNamePrev As String = ""

           'Dim lblCampus As Label = dlStaff.FindControl("lblcampus")
           Dim cmd As New SqlCommand("proc_Directory_Select_Full_byGroupId_test", strConn)


           cmd.CommandType = CommandType.StoredProcedure
           cmd.Parameters.AddWithValue("@Id", groupid)
           strConn.Open()
           Dim da As New SqlDataAdapter(cmd)
           da.Fill(dt)
           staff.DataSource = dt
           staff.DataBind()


           strConn.Close()
       End If



Asp.net код

<asp:datalist id="staff" runat="server">
  <itemtemplate>
      <asp:label id="campusname" runat="server" text='<%#Eval("campusname") %>' ></asp:label>
  </itemtemplate>

   </asp:datalist>

1 Ответов

Рейтинг:
2

OriginalGriff

Мы не знаем - и мы не можем сказать вам, что делать.
Проблема в том, что вы используете хранимую процедуру, к которой у нас нет доступа, для доступа к данным в таблицах, к которым у нас нет доступа, для извлечения данных, о которых мы понятия не имеем (и ваш пример не помогает - я понятия не имею, является ли это одна строка из 6 столбцов или 6 строк из одного столбца).
И тогда вам нужна помощь с изменениями, которые также не имеют никакого смысла.

Помните, что мы не можем видеть ваш экран, получить доступ к вашему жесткому диску или прочитать ваши мысли - мы получаем только то, что вы печатаете для работы, мы не получаем никакого другого контекста, кроме этого.

Вы должны начать с того, чтобы научиться задавать вопросы - нет, я серьезно, - потому что в данный момент все вопросы, которые вы задали, предполагают много информации, к которой вы причастны, а мы нет. Подумайте об этом так: предположим, что ваша машина сломалась в середине нигде, и вы звоните в гараж. Вы говорите: "Моя машина сломалась, пожалуйста, приходите и почините ее", а затем выключаете телефон. Как долго вы собираетесь ждать, пока кто-то не приедет с нужными битами, чтобы починить вашу точную машину?

Идти сюда: Задавать вопросы-это навык[^ и прочтите его очень внимательно. Тогда подумайте о проблеме йору и о том, как вам нужно просить помощи у совершенно незнакомых людей!


rlgentry

Я действительно не думал что это имеет значение что такое мой sql store proc но проще говоря это было бы так
"выберите campusname, firstname, lastname из каталога"

Я хотел бы "сгруппировать" имя и фамилию под именем кампуса.
Я решил, что мне нужно 2 петли, но я получаю только последнюю запись.


Код есть
Dim campusname As Label = DirectCast(staff.Items(0).FindControl("campusname"), Label)
Для каждой строки в dt.Rows

campusnameCUrr = строка("campusname")
campusname.Текст = campusnameCUrr
Для j как целого числа = 0 до dt.строк.Количество - 1
campusname.Текст = campusnameCUrr
campusNamePrev = dt.Rows(j)(10).ToString()
Если кампусное имя.Text = campusNamePrev тогда

Выход Для


Конец, Если

Следующий


Следующий