我要上传存储在本地计算机上的zip文件,并将其上传到asp.net服务器
到目前为止我尝试了什么?
我尝试将zipfile的纯文本发送到服务器,但是由于zipfile似乎已更改,因此无法正常工作。
所以我想知道的是从WinForm(存储在本地计算机上)向运行asp.net的服务器发送ZipFile的最佳方法是什么
谢谢
答案 0 :(得分:0)
上传文件.docx
,.png
,.pdf
或.zip
之类的文件没有区别。
您可能已经准备好该线程:
Uploading Files in ASP.net without using the FileUpload server control
基本上,它说:
您可以在aspx
文件中使用:
<form id="form1" runat="server" enctype="multipart/form-data">
<input type="file" id="myFile" name="myFile" />
<asp:Button runat="server" ID="btnUpload" OnClick="btnUploadClick" Text="Upload" />
</form>
在后面的代码中:
protected void btnUploadClick(object sender, EventArgs e)
{
HttpPostedFile file = Request.Files["myFile"];
//check file was submitted
if (file != null && file.ContentLength > 0)
{
string fname = Path.GetFileName(file.FileName);
file.SaveAs(Server.MapPath(Path.Combine("~/App_Data/", fname)));
}
}
此外,您可以为此设置一个缓冲区,例如:
using (FileStream fs = File.Create("D:\\_Workarea\\" + fileName))
{
Byte[] buffer = new Byte[32 * 1024];
int read = context.Request.GetBufferlessInputStream().Read(buffer, 0, buffer.Length);
while (read > 0)
{
fs.Write(buffer, 0, read);
read = context.Request.GetBufferlessInputStream().Read(buffer, 0, buffer.Length);
}
}
或者如此简单,喜欢使用:
FileInput.PostedFile.SaveAs("~/App_Data/");