pliki tynczasowe

0

Witam,

mam kod odczytujący wartość binarna (Image) z bazy danych MS SQL :

 while (rd.Read())
            {
               
                barrImg = (byte[])rd[0];
 
                FileStream fs = new FileStream(w.ToString() + ".jpg",
                                  FileMode.Create, FileAccess.Write);
                fs.Write(barrImg, 0, barrImg.Length);
                fs.Flush();
                fs.Close();   w++
              }

tworząc nam 3 pliki jpg: 0.jpg,1.jpg, 2.jpg

teraz wczytuje te pliki do PictuteBox'ów

Problem:
Po nacisnieciu przyciku dalej kod wykonuje się jeszcze raz i niestety pojawia się błąd zwiazany z tym ze nie mozna nadpisac pliku "0.jpg" bo jest on uzywany przez inny process

jak nie umiesczzse tych plikow w PictureBox'ach to nie ma błędu.
ale jak przypisze "0.jpg" do PictBox a pozniej umiesczse w pictureBox'ie inny w ogole plik to itak ten "0.jpg" jest niby uzywany przez inny process...

Ja chce po prostu zaladowac nowe zdjecia z bazy po nacisnieciu dalej kasując wczesniejsze
Prosze o rady

0

Po co w ogóle do pliku zapisujesz [???]

List<Image> images = new List<Image>();
while (rd.Read())
{
   using(MemoryStream stream = new MemoryStream((byte[])rd[0])
      images.Add(Image.FromStream(stream));
}

</image></image>

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