У меня есть приложение winforms, которое хранит содержимое файлов в базе данных. Сохраненные файлы могут быть примерно любого типа (слова, Excel, PDF, текст, изображение ...), пользователь может выбрать практически любой загружаемый файл.Показать файл из байт [] или поток
Пользователь может затем запросить базу данных, найти файл, а затем открыть его.
У меня нет проблем с извлечением массива байтов из базы данных в виде потока или массива байтов.
В идеале я мог бы отображать файл непосредственно из массива или потока байтов; на данный момент я спасаю его как временный файл, а затем открыть, что с:
Process.Start(fileName);
Как я могу отобразить файл с помощью соответствующего приложения либо из любого из массива байтов или файла потока?
Я согласен, это единственный вариант. – Jochen
Ну, это похоже на консенсус и самый простой вариант для меня, он уже закодирован и работает. Единственный недостаток - это оставшиеся временные файлы. Я не могу удалить их из своего приложения, так как пользователь может оставить запущенное приложение открытым дольше, чем мое. – baralong
Когда вы говорите, что вы сохраняете его как временный файл, вы имеете в виду, что вы сохраняете файл в стандартном временном каталоге Windows? Для этого я использую GetTempPath (http://msdn.microsoft.com/en-us/library/system.io.path.gettemppath.aspx). Таким образом, окна будут ответственны за очистку файла (хотя и в конечном итоге) –