Как произвести Excel *.xls файл от классического ASP

Вы можете изменить контекст сборки Docker на родительский каталог.

Измените ваш dockerfile на это:

FROM microsoft/dotnet:2.1-sdk
WORKDIR /app

# copy fsproj and restore as distinct layers
COPY App/*.fsproj ./
RUN dotnet restore

# copy and build everything else
COPY App/. ./
RUN dotnet publish -c Release -o out

И затем запустите (из папки, содержащей Add и Library)

docker build -f App/Dockerfile .

Но да, обычно ваш файл docker обычно более распространен находится там, где вы хотите, чтобы ваш контекст сборки был. Так что там, где есть все файлы, которые вам понадобятся.

В docker для Mac / Windows демон docker будет копировать каждый файл из контекста сборки в виртуальную машину. Так что здесь есть хит производительности. Что-то, чтобы рассмотреть, когда вы структурируете свои проекты.

10
задан cdeszaq 14 January 2009 в 17:21
поделиться

6 ответов

Это - AddHeader, не AppendHeader.

<%@ Language=VBScript %>
<%  Option Explicit

Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "Content-Disposition", "attachment; filename=excelTest.xls"
%>
<table>
    <tr>
        <td>Test</td>
    </tr>
</table>

Обновление: я записал сообщение в блоге о том, как генерировать файлы Excel в Классике ASP. Это содержит довольно полезную часть кода для генерации и xls и файлов CSV.

19
ответ дан 3 December 2019 в 17:22
поделиться

MS сделал библиотеку COM названной веб-Компонентами Office, чтобы сделать это. MSOWC.dll должен быть зарегистрирован на сервере. Это может создать и управлять офисными файлами документов.

Как использовать веб-компонент электронной таблицы с Visual Basic

Работа с веб-компонентами Office

4
ответ дан 3 December 2019 в 17:22
поделиться

Существует 'дешевый и грязный' прием, который я использовал... shhhh, не говорят никому. Если Вы производите разделенный текст вкладки и делаете имя файла *.xls затем, Excel открывает его без возражения, вопроса или предупреждения. Поэтому просто проверните данные в текстовый файл с определением границ вкладки, и можно открыть его с Excel или Открыть Office.

0
ответ дан 3 December 2019 в 17:22
поделиться

Необходимо указать файл, который будет загружен (вложение) клиента в http заголовке:

Response.ContentType = "application/vnd.ms-excel"
Response.AppendHeader "content-disposition", "attachment: filename=excelTest.xls"

http://classicasp.aspfaq.com/general/how-do-i-prompt-a-save-as-dialog-for-an-accepted-mime-type.html

0
ответ дан 3 December 2019 в 17:22
поделиться

Можно всегда просто экспортировать HTML-таблицу в документ XLS. Excel делает довольно хорошее задание, понимая HTML-таблицы.

Другой possiblitly должен экспортировать HTML-таблицы как CSV или файл TSV, но необходимо было бы установить форматирование в коде. Это не слишком трудно для выполнения.

В Microsoft существуют некоторые классы. Office. Interop, которые позволяют Вам создавать файл Excel программно, но я всегда находил, что они немного неуклюжи. Можно найти версию.NET создания электронной таблицы здесь, которую должно быть довольно легко изменить для классического ASP.

Что касается.NET, мне всегда нравился Excel XML Writer Library CarlosAG. Это имеет хороший генератор, таким образом, можно установить файл Excel, сохранить его как электронную таблицу XML, и это генерирует код, чтобы сделать все форматирование и все. Я знаю, что это не классический ASP, но я думал, что брошу его там.


С тем, что Вы пробуете выше, попытайтесь добавить заголовок:

"Content-Disposition", "attachment; filename=excelTest.xls"

Посмотрите, работает ли это. Кроме того, я всегда использую это для типа контента:

  Response.ContentType = "application/octet-stream"
    Response.ContentType = "application/vnd.ms-excel"
0
ответ дан 3 December 2019 в 17:22
поделиться

I had the same issue until I added Response.Buffer = False. Try changing the code to the following.

Response.Buffer = False Response.ContentType = "application/vnd.ms-excel" Response.AddHeader "Content-Disposition", "attachment; filename=excelTest.xls"

The only problem I have now is that when Excel opens the file I get the following message.

The file you are trying to open, 'FileName[1].xls', is in a different format than specified by the file extension. Verify that the file is not corrupted and is from a trusted source before opening the file. Do you want to open the file now?

When you open the file the data all appears in separate columns, but the spreadsheet is all white, no borders between the cells.

Hope that helps.

0
ответ дан 3 December 2019 в 17:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: