Pessoal.
Segue um exemplo rápido de como enviar arquivos ao servidor em ASP.NET usando o servercontrol UploadFile.
HTML:
<form id="form1" runat="server"> <div> <asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="btnEnviar" runat="server" Text="Enviar" onclick="btnEnviar_Click" /> <asp:Label ID="lMsg" runat="server"></asp:Label> </div> </form>
C#:
string caminhoArq = ""; try { if (FileUpload1.HasFile) //Verifica se um arquivo foi enviado { caminhoArq = Server.MapPath("~/arquivos/") + FileUpload1.FileName; FileUpload1.SaveAs(caminhoArq); lMsg.Text = "Arquivo enviado com sucesso."; } else lMsg.Text = "Selecione um arquivo."; } catch { lMsg.Text = "Não foi possível enviar o arquivo."; }
O método MapPath da classe Server retorna o caminho físico do diretório “Arquivos”. É necessário pois o método SaveAs do FileUpload precisa de um caminho físico para entender onde salvar o arquivo.
É possível verificar o tamanho do arquivo enviado checando da propriedade ContentLength em FileUpload1.PostedFile. Seu valor é em bytes.
if (FileUpload1.PostedFile.ContentLength > 10485760) ...
Também é possível checar o tipo do arquivo enviado. A propriedade ContentType em FileUpload1.PostedFile mantém o tipo MIME do arquivo.
if (FileUpload1.PostedFile.ContentType == "application/pdf") ...
MIME Reference:
Fácil, simples, e funcional. Isso é ASP.NET.