Pergunta

Eu estou tentando servir documentos do Excel que tenho armazenados em um banco de dados através de um feed RSS WCF (o usuário clica em um link na alimentação e envia um documento Excel específico).

Os arquivos do Excel não estão sentados em um diretório em qualquer lugar (caso em que eu poderia apenas dar a cada usuário um URL estático).

Então, o que eu gostaria de fazer é ter uma URL gerada dinamicamente no feed RSS (que indicaria a ID do documento). Quando o usuário clica no URI ele vai para um webservice WCF que desserializa o documento Excel fora do banco de dados e envia para o usuário (que deseja obter o diálogo padrão de documento Open / Save Excel).

Infelizmente eu não consigo obter o serviço web para enviar um documento que o cliente entende é um documento Excel. I figura que eu preciso fazer alguma coisa com o ponto final ou alguma configuração MIME no IIS ou algo completamente diferente, mas eu ainda não descobri o que é isso.

Note, eu estou usando WCF hospedado no IIS 7.0.

Muito obrigado antecipadamente !!!

Foi útil?

Solução

Você não dão muita informação específica, mas pode ser que você não definir o tipo de MIME. Não sei o que você já fez, mas você pode fazer o que quiser usando o WCF descansar Programação Modelo .

Os pontos-chave são:

  • retornar um fluxo em sua interface
  • definir o tipo de MIME: WebOperationContext.Current.OutgoingResponse.ContentType = "application / vnd.ms-excel";
  • usar o WebHttpBinding e WebHttpBehavior

MSDN tem um exemplo completo que retorna um JPEG que deve fazer exatamente o que você quer (exceto a mudança do tipo JPEG MIME a um tipo Excel MIME como acima).

Boa sorte.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top