none
Linq to SQL Как получить файл из базы данных? RRS feed

  • Вопрос

  • Доброго времени суток, Пытаюсь получить данные из представления в базе данный MS SQL. Использую Linq.

     string Path = System.IO.Path.Combine(System.IO.Path.GetTempPath(), this._Item.FILE_NAME);
                            byte[] Data = _Item.FILE_DATA.ToArray();
                            using (FileStream fs = new System.IO.FileStream(Path, FileMode.Create, FileAccess.Write, FileShare.Write))
                            {
                                using (BinaryWriter binWriter = new BinaryWriter(fs)) 
                                {
                                    binWriter.Write(Data);
                                    binWriter.Close(); 
                                }
                                fs.Close();
                            }
    _Item.FILE_DATA  - Это поле представления типа System.Data.Linq.Binary в нем хранится файл который ранее был загружен в базу данных. При работе кода исключений не возникает но файл почему то получается с повреждением. Подскажите пожалуйста что я делаю не так?


Ответы

  • Уверены что содержимое не было повреждено еще при записи?

    В любом случае можно попробовать так:

    File.WriteAllBytes(Path, Data);


    This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа Snak2013 9 июня 2017 г. 9:56
    8 июня 2017 г. 19:58
    Модератор

Все ответы

  • Уверены что содержимое не было повреждено еще при записи?

    В любом случае можно попробовать так:

    File.WriteAllBytes(Path, Data);


    This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа Snak2013 9 июня 2017 г. 9:56
    8 июня 2017 г. 19:58
    Модератор
  • Спасибо так я тоже пробовал результат тот же. А вот касательно того что файл поврежден вполне может быть надо проверить. Спасибо за совет.