Как мне сохранить документы .doc в базе данных SQL Server
-
26-10-2019 - |
Вопрос
Я сохраняю файл .doc в базу данных SQL Server как varbinary(max)
Используя код C# ниже.
Я могу сохранить файл, но когда я забрать файл обратно и хочу отобразить содержимое на веб -странице, мой код загружает файл, и я в большей степени не понимаю, как с ним обработать.
Точная функциональность, которую я ищу, - это путь naukri.com Загружает резюме и дает предварительный просмотр. Мой код:
byte[] fileContent = new byte[fuResume.PostedFile.ContentLength];
fuResume.PostedFile.InputStream.Read(fileContent, 0, fuResume.PostedFile.ContentLength);
//lblAppliedMessage.Text = ByteArrayToString(fileContent);
//lblAppliedMessage.Text = BitConverter.ToString(fileContent).Replace("-", string.Empty);
byte[] btYourDoc;
btYourDoc = fileContent;
Response.ContentType = "application/ms-word";
Response.AddHeader("Content-Disposition", "inline;filename=yourfilename.doc");
Response.OutputStream.Write(btYourDoc, 0, fileContent.Length);
Response.BinaryWrite(btYourDoc);
Response.End();
Решение
Squillman прав. Есть множество сторонних компонентов, которые делают Word -> HTML преобразование.
Еще один вариант, который может быть более подходящим для интрасети -сайта, - это установить слово на сервере.
Пример этого здесь:
http://www.c-sharpcorner.com/uploadfile/munnamax/wordtohtml03252007065157am/wordtohtml.aspx
По сути, DOC открывается, сохраняется как HTML, затем последующие запросы могут получить HTML -версию файла для предварительного просмотра.
Однако на стороне сервера Automation Automation есть много ловушек - см. http://support.microsoft.com/kb/257757 Чтобы получить больше информации.
Другие советы
Причина, по которой ваш файл загружается вместо отображения, заключается в том, что вы устанавливаете тип контента на приложение/ms-word. Это говорит браузеру загрузить файл (они не могут быть изначально обрабатывать файлы такого типа, чтобы они делегировали внешнее приложение).
Вам понадобится код, который знает, как интерпретировать формат слова MS и преобразовать его в что -то, что можно просматривать в браузере (HTML, какой -то плагин, который сделает это для вас и т. Д.). Сохранение документа Raw Word, а затем отправка его обратно клиенту в том же состоянии, в основном, просто загружает их файл Word.
Вот хороший, где конечный результат соответствует пользователю, скачать или просматривать файл Вот ссылка Но @Squillman прав, поставив заголовки ответов, которые вы говорите ему, чтобы скачать.