Pobieranie obrazka do aplikacji

Pobieranie obrazka do aplikacji
EL
  • Rejestracja:około 13 lat
  • Ostatnio:4 miesiące
0

Witam.
Od jakiegoś czasu piszę aplikację która zawiera bazę danych o sportowcach... Całość piszę w C# korzystając z bazy MS SQL.
Mam już wczytywanie i zapisywanie danych na temat sportowców z/do bazy ale chciałbym dodać do tego jeszcze aby pobierało mi zdjęcia sportowców. Mogą być one przechowywane jakoś w bazie lub w folderze, pobierając jedynie odpowiednią ścieżkę do picturebox. Nie ma to większego znaczenia...

Pozdrawiam,
eL

edytowany 1x, ostatnio: eL
Z8
  • Rejestracja:ponad 12 lat
  • Ostatnio:około 12 lat
  • Postów:76
0

Taki mały przykładowy kodzik z mini apki ;p

Kopiuj
ublic partial class _formaGlowna : Form
    {
        private string _aktualnyKatalog = "";
        private string[] _listaPlikow;
        private Random _gen = new Random();
        
        public _formaGlowna()
        {
            _aktualnyKatalog = Directory.GetCurrentDirectory();
            _aktualnyKatalog += "/misie";
            _listaPlikow = Directory.GetFiles(_aktualnyKatalog);
            
            InitializeComponent();
            ZmienObrazek();
            
        }


        public void ZmienObrazek()
        {
            int _losowaLiczba;
            string _plik = "";
            do{
                 _losowaLiczba= _gen.Next(_listaPlikow.Length);
                _plik = _listaPlikow[_losowaLiczba];

            }while(!_plik.Substring(_plik.LastIndexOf('.')).Equals(".jpg"));

            _pictureBox.ImageLocation = _plik;
            _timer.Start();
            
        }

        private void _timer_Tick(object sender, EventArgs e)
        {
            ZmienObrazek();
        }

    } 

bartlomiej-wasik.pl
RE
Dlaczego wszystkie twoje zmienne są z podkreśleniem? To bez sensu. Używa się go w przypadku prywatnych pól, a nie zmiennych lokalnych.
RE
Ponadto, cały ten kod z metody ZmienObrazek można zapisać w dwóch linijkach korzystając z metod rozszerzających Linq. Naucz się operować na kolekcjach.
Z8
Dobrze wiedzieć :)
xeo545x39
  • Rejestracja:ponad 14 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Kosmos
  • Postów:1571
0

Co kurła debuguj ten kod i streszczaj się klientowi chce się fixa, a jak nie kurła to odpale visuala i ci pomoge a tego byś nie chciał
RE
Moderator
  • Rejestracja:około 18 lat
  • Ostatnio:około rok
0

Jest kilka za i przeciw, które trzeba rozważyć wybierając pomiędzy przechowywaniem w bazie danych całego obrazu bądź tylko jego nazwy. Pod względem wydajności można powiedzieć: zależy. Jeżeli trzymasz wszystko w jednym miejscu, na jednym serwerze to tak dużej różnicy nie będzie. Plusem w takim wypadku będzie np. integralność danych, uproszczona replikacja czy migracja. Jeżeli zależy ci na bardzo dużej wydajności tworząc np. aplikację webową i serwer bazy danych jest oddzielny albo ich kilka to lepiej ograniczyć ilość przesyłanych danych. Treść zostanie szybciej wysłana do klienta, a ten pobierze obrazek z wydajnego serwera ze statycznym kontentem albo CDN.
Nie chodzi ci raczej o ten przypadek, więc sądzę, że bez obaw możesz zastosować sposób podany w linku w poście powyżej.

edytowany 1x, ostatnio: Rev
EL
  • Rejestracja:około 13 lat
  • Ostatnio:4 miesiące
0

Gdyby chodziło o przesył dużej ilości danych to faktycznie chodziłoby mi o wydajność.
W moim przypadku gdzie baza zlokalizowana jest na komputerze a ilość obrazów jakie baza miałaby przechowywać są rzędu 20-30 nie widzę sensu aż tak bardzo się nad tym skupiać.
Na tą chwilę sprawdzę oba powyższe przykłady i wybiorę bardziej mi odpowiadający.
Dzięki!

Pozdrawiam,
eL

Problem rozwiązany, przechowywanie plików w folderach - jakoś wydało mi się to łatwiejsze!

Dzięki!

edytowany 1x, ostatnio: eL

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.