none
HtmlInputFile RRS feed

  • 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
    quarta-feira, 26 de outubro de 2011 18:31

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
    sexta-feira, 4 de novembro de 2011 11:26
  • 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
    domingo, 18 de dezembro de 2011 11:56
  • 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
    terça-feira, 27 de dezembro de 2011 17:17
  • 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)
    quinta-feira, 29 de dezembro de 2011 10:21