Как доставить электронную таблицу Excel через веб-сервис - PullRequest
2 голосов
/ 20 апреля 2009

Можно ли доставить электронную таблицу Excel через веб-сервис. Я полагаю, что не так, как веб-сервисы ASP.NET, кажется, имеют дело только с сериализуемыми элементами, которых нет в двоичном формате excel (я думаю). Если Excel сохранен в формате XML, это будет работать?

У меня есть несколько отчетов, которые будут отправлены по электронной почте, но был введен запрос, позволяющий получать эти отчеты через веб-службы.

Это достижимо?

Ответы [ 3 ]

7 голосов
/ 20 апреля 2009

Да. Вы можете просто открыть файлы Excel в виде потоков памяти на сервере и передать их клиенту / потребителю в виде байта []. Затем клиент может просто сохранить поток файлов обратно на локальный компьютер.

У MS есть статья базы знаний.

http://support.microsoft.com/kb/318425

0 голосов
/ 20 апреля 2009

вы можете сериализовать файл excel, превратив его в строку в формате MIME, используя base64 или некоторые другие альтернативы.

вложения в сообщениях того же типа.

Конечно, клиент должен знать, что он ожидает строку, закодированную в MIME, и какой тип декодирования использовать

0 голосов
/ 20 апреля 2009

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

Другой альтернативой этому было бы просто сделать файлы электронных таблиц доступными для прямой загрузки. Тот факт, что вы размещаете веб-службы, подразумевает, что вы используете какой-либо веб-сервер, поэтому WebClient.DownloadFile должен быть доступен. Ваш веб-сервис может затем предоставить URL-адрес самого последнего файла.

* edit - ответ Эоина Кэмпбелла ниже позволит вам выбрать предпочтительный маршрут, если вы все еще желаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...