Inquiridor
HtmlInputFile

Pergunta
-
Quero criar um controle customizado que possua um objeto do Tipo HtmlInputFile. A finalidade do controle é anexar vários aquivos. Mas o problema que é que não consigo obter o conteúdo do arquivo postado em PostedFile. O objeto somente retorna para mim quando o método LoadPostBack é disparado é o caminho do arquivo. Como faço para que eu possa ter os stream do arquivo a cada postagem?
Obrigado!
Felipe Ribeiro
Se esta postagem foi útil, marque-a como tal
Todas as Respostas
-
Bom dia Felipe,
segue um artigo que pode lhe ser útil, entendo que é exatamente o que você precisa.
http://dotnetslackers.com/articles/aspnet/Upload_multiple_files_using_the_HtmlInputFile_control.aspx
Abraços,
Daniel Cheida de Oliveira- Sugerido como Resposta Daniel Cheida sexta-feira, 4 de novembro de 2011 11:26
- Marcado como Resposta Eder CostaModerator terça-feira, 29 de novembro de 2011 17:36
- Não Marcado como Resposta Felipe Ribeiro domingo, 18 de dezembro de 2011 11:51
- Não Sugerido como Resposta Felipe Ribeiro segunda-feira, 5 de março de 2012 13:42
-
Desculpem, mas não é isso o que eu estou procurando....
Quero criar um Web Control Library (o controle que fica no ToolBox)...
Dentro dele que faça o que eu mencionei no thread...
Do jeito como vocês estão postando é muito fácil...
Estou usando o DataList para mostrar os anexos...
Estou querendo dizer que é muito parecido com o controle que anexa os arquivos no HOTMAIL... Você escolhe e clica em anexar e ele lista os arquivos que estão anexados...
Obrigado!
Felipe Ribeiro
A salvação não é uma recompensa pelo bem que fazemos, nenhum de nós tem mérito nisso. Foi o próprio Deus quem fez de nós o que somos e nos deu uma vida nova em Cristo Jesus; e muitos séculos atrás, Ele planejou que gastássemos essa vida auxiliando os outros. (Ef. 2:9,10 -
Amigo, para cada arquivo que você anexar, armazene seu caminho ou nome numa List<string> com o método Add() e depois grave esta lista numa Session. Após o Update, faça com que o DataList utilize como DataSource a sua Session com a List.
Os ítens serão preenchidos na lista e você poderá colocar um link para que o usuário possa clicar e abrir o anexo ou mesmo visualizar o que foi inserido.
O segredo não é armazenar o arquivo na memória, e sim o local onde o arquivo foi gravado no servidor.
Rafael Santos
E-mail: rsdsantos@gmail.com
Pequeno Gafanhoto -
Rafael,
Já faço essa armazenagem somente do caminho do arquivo...
Acho que vocês ainda não entenderam...
Quero criar um WebControl para fazer upload de múltiplos arquivos...
Uso um DataList e um HtmlInputFile...
Quando selecionar o arquivo, upload dele com o Stream do HtmlInputFile e depois armazenar o caminho dele...
O que acontece é que o HtmlInputFile não está trazendo o conteúdo stream do arquivo na propriedade PostedFile. Não tem nada dentro, somente o caminho do arquivo... Se eu usar o SaveAs não vai dar certo porque não tem Stream dentro dele.
Então, como funciona o do Hotmail? Qual o segredo?
Felipe Ribeiro
A salvação não é uma recompensa pelo bem que fazemos, nenhum de nós tem mérito nisso. Foi o próprio Deus quem fez de nós o que somos e nos deu uma vida nova em Cristo Jesus; e muitos séculos atrás, Ele planejou que gastássemos essa vida auxiliando os outros. (Ef. 2:9,10)