У меня есть ObservableCollection класса Customers, который я заполняю из запроса к базе данных. Из-за того, как таблицы объединяются, я иногда получаю одноразовые записи (у Билла есть адрес доставки, который отличается от его почтового адреса), которые появляются в данных дважды.
Каждая строка клиента имеет идентификатор в качестве уникального первичного ключа, и это то, что я использую для получения дополнительной информации о клиенте, когда кто-то выбирает строку из связанного ListView.
В версии этой программы для WinForms я бы искал в ListView идентификатор клиента, и, если он был найден, я бы не вставлял его повторно.
ObservableCollection, похоже, не в состоянии легко сказать мне, существует ли уже CustomerID в одном из экземпляров класса коллекции, поэтому мне интересно, как лучше всего это обработать.
Идеи, которые у меня были до сих пор:
' Not sure how to make this work, since the CustomerID and Name would be the same, but the city, state, zip might not be.'
t = new classCustomer(CustomerID, CustomerName, City, State, Zip)
if not sr.contains(t) then
sr.Add(t)
end if
Possibly figure out how to create an ObservableDictionary, but so far all the examples are in C#, and it may take me a while to port it over to VB.net
Кто-нибудь знает о лучшей реализации?