Argument DbSet

0
 public void ZaladujComboBoxa(System.Data.Entity.DbSet<dynamic> tabela,Tabele ktora, ComboBox gdzie)
        {
            gdzie.Items.Clear();
            dynamic lista = from p in tabela select p;
                            
            foreach (var wartosc in lista)
            {
                gdzie.Items.Add(wartosc.ToString());
            }

        }

Każdy typ przekazywany jako typ DbSet posiada metode ToString();

Chce stworzyć uniwersalną metodę do dodawania elementów do ComboBox-a ale mam problem z wywołaniem metody gdyż nie akceptuje mi pierwszego argumentu (przekazuje DbSet<Autorzy>) i nie wiem czy da się jakoś to zrobić inaczej .

0

Rozwiązałem to tak :

 public void ZaladujComboBoxa(dynamic tabela, ComboBox gdzie)
        {
            gdzie.Items.Clear();

            foreach (var wartosc in tabela)
            {
                gdzie.Items.Add(wartosc.ToString());
            }

        }

Wywołanie metody :

ZaladujComboBoxa(polaczenie.Wydawnictwo.ToList(), cb_wydawnictwo); 

Chyba że ktoś ma fajniejszy pomysł ?

1

Może zamiast dynamic, to object[] tabela? Dynamic jest wolne i niebezpieczne czasami.

0

Dzięki jutro spróbuje ;) Dziś czas spać ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1