2009-04-23 4 views
0

Я использую Visual C# 2008 Express Edition и базу данных Express SQL. Каждый раз, когда я создаю свое решение, я получаю ошибку, подобную приведенной выше. Очевидно, имя файла меняется. Новый файл также создается каждый раз, когда я нажимаю точку отладки.Файл 'C: .... ..... ..... bin debug 128849991926295643' уже существует

У меня есть хранимая процедура, которая получает каждую строку из таблицы базы данных, она получает эти строки каждый раз, когда основная форма инициализируется и добавляет их в список Generics. Без вставки или удаления из таблицы каждый раз, когда я запускаю приложение для Windows, он получает другое количество строк. Ошибка начала происходить в то же время, что и странная проблема поиска данных. Любые идеи вообще о том, что может это сделать?

Благодаря

Хосе,

Конечно, вот мой метод с #, он извлекает каждую строку в моей таблице, каждая строка имеет Int и и изображение ....

private List<ImageNumber> GetListOfKnownImagesAndNumbers() 
    { 
     //ImageNumber imNum = new ImageNumber(); 

     SqlCommand sqlCommand = new SqlCommand(); 
     sqlCommand.Connection = _conn; 

     try 
     { 
      MemoryStream ms = new MemoryStream(); 

      sqlCommand.CommandText = "usp_GetKnownImagesAndValues"; 

      _conn.Open(); 
      using (IDataReader dr = sqlCommand.ExecuteReader()) 
      { 
       while (dr.Read()) 
       { 
        ImageNumber imNum = new ImageNumber(); 
        imNum.Value = dr.IsDBNull(dr.GetOrdinal("ImageValue")) ? 0 : Convert.ToInt32(dr["ImageValue"]); 

        //Turn the bitmap into a byte array 
        byte[] barrImg = (byte[])dr["ImageCaptured"]; 
        string strfn = Convert.ToString(DateTime.Now.ToFileTime()); 
        FileStream fs = new FileStream(strfn, 
             FileMode.CreateNew, FileAccess.Write); 
        fs.Write(barrImg, 0, barrImg.Length); 
        fs.Flush(); 
        fs.Close(); 
        imNum.Image = (Bitmap)Image.FromFile(strfn); 

        _listOfNumbers.Add(imNum); 
       } 
       dr.Close(); 
       _conn.Close(); 
      } 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 
     finally 
     { 
      _conn.Close(); 
     } 

     return _listOfNumbers; 

    } 

И вот мой ХП ....

ALTER PROCEDURE dbo.usp_GetKnownImagesAndValues ​​ AS НАЧАТЬ

select ImageCaptured, ImageValue 
from CapturedImages 

END

+1

Пожалуйста, покажите нам некоторый код –

+0

Хосе, я вставил свой код в вопрос .... – 2009-04-23 23:34:38

+0

Если вы делаете чистую, а затем построить это правильно строить? – Damovisa

ответ

1

Спасибо за глядя на это. Ответ в конце концов состоял в том, чтобы поместить Thread.Sleep внутри цикла while, и он начал работать отлично. Возможно, что-то еще, что я мог бы сделать, я, очевидно, жду, когда что-то закончится, и это поможет нам больше времени. Если бы я знал, что нужно для завершения и как обнаружить, когда он закончил, я мог бы проверить это, а не просто ждать короткого времени.

Смежные вопросы