Визуализация файла Excel

1

Я действительно представляю файл excel в браузере. Я использую Response.Writefile(filePath), чтобы это сделать. Он работает отлично в немногих машинах. Я получаю всплывающее окно с опциями "Открыть", "Сохранить" и "Отменить".

Но запустите несколько машин после того, как я сделаю сохранение, нажмите на всплывающее окно, где пустое место остается открытым. Это происходит только в нескольких машинах. Это окно просто мерцает на другой машине и закрывается само по себе. Пожалуйста, дайте мне знать, что можно сделать, чтобы эта простая пустая страница была закрыта сама по себе после того, как файл был открыт или сохранен.

2 ответа

2
Лучший ответ

Вы настраиваете HTTP-заголовки? Если вы этого не сделаете, вы полагаетесь на браузер, чтобы правильно интерпретировать данные.

Чтобы сообщить обозревателю, вы отправляете контент excel:

Response.ContentType = "application/x-excel";

Чтобы сообщить обозревателю ответ на запрос как загрузку:

Response.AddHeader("content-disposition", "inline; filename=\"" + YourSuggestedFileName + "\"");

Машины, дающие вам проблемы, вероятно, не знают, что делать с данными excel.

  • 0
    Это сработало нормально. но у меня все еще есть проблема. Когда это открывается на отдельной странице проводника, мне нужно получить возможность сохранить файл как файл file.xls. Но когда я захожу в приложение, я отключаю строку меню. Есть ли возможность включить ее только для этой отдельной страницы?
  • 0
    Это работает и в ASP.NET MVC 3, как вы уже писали. Очень полезно.
0

Проблема с этим подходом заключается в том, что поля даты и числовые поля отображаются как строка. Конечный пользователь должен затем явно изменить тип для этих полей, если они хотят их сортировать.

Если у вас есть бюджет, я предлагаю использовать такой компонент, как: Aspose.Cells

Ещё вопросы

Сообщество Overcoder
Наверх
Меню