• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dictionary- Czy kluczem, lub wartością, mogą być obiekty?

0 głosów
327 wizyt
pytanie zadane 13 października 2015 w C# przez Surykat Stary wyjadacz (14,780 p.)
Witam serdecznie :)

Tworzę ze znajomymi czytnik rss (na razie robię plan apki) i napotkałem na pewną wątpliwość:

Chcę użyć słownika, który przechowywałby obekty klasy Artykuł jako klucz, a wartością byłby Kanał, do którego dany artykuł należy.

Wątpliwość mam przy kluczu- klucze nie mogą się powtarzać, ale jak kompilator rozróżni, czy jeden obiekt klasy artykuł, nie jest tym samym obiektem w innym miejscu? Sam sprawdzi to metodą Equal() ? :)  Czy używanie obiektów, jako kluczy i wartości to dobre podejście? Czy możejakieś ID wprowadzać?

ID i tak będzie konieczne, bo apka oprze się na bazie danych.

1 odpowiedź

0 głosów
odpowiedź 13 października 2015 przez niezalogowany
wybrane 26 października 2015 przez Surykat
 
Najlepsza
Jeżeli musisz mieć ID, to chyba lepiej użyć ID. Jeżeli nie chcesz go użyć to prawie na pewno musisz dodać możliwość porównywania obiektów, więc najlepiej zreimplementować Equals

http://stackoverflow.com/questions/634826/using-an-object-as-a-generic-dictionary-key
komentarz 26 października 2015 przez Surykat Stary wyjadacz (14,780 p.)
Wykorzystałem ID, chciałem na siłę wszystko uprościć, paradoksalnie komplikując sprawę. :) Dzięki.

Podobne pytania

0 głosów
0 odpowiedzi 415 wizyt
pytanie zadane 21 października 2020 w C# przez Masterkk121 Początkujący (280 p.)
0 głosów
1 odpowiedź 221 wizyt
+1 głos
1 odpowiedź 638 wizyt
pytanie zadane 1 września 2021 w C# przez DarthMazut Bywalec (2,990 p.)

93,777 zapytań

142,736 odpowiedzi

323,388 komentarzy

63,381 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...