Вопрос

Я сохраняю файл .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 прав, поставив заголовки ответов, которые вы говорите ему, чтобы скачать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top