[英]c# - Request.Files is always empty after UploadFile
我正在尝试将文件从Windows窗体c#客户端应用程序上载到ASP.NET C#应用程序。 实际上,我已经在客户端应用程序中运行以下代码:
WebClient uploader = new WebClient();
string UploadFilePath = "<filepath>";
string uploadWebUrl = "http://localhost:51037/(S(044401gmyxhg3uz01ulngfdp))/upload.aspx";
byte[] responseArray = uploader.UploadFile(uploadWebUrl, UploadFilePath);
这是upload.aspx页面
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>
<Script language="C#" runat=server>
void Page_Load(object sender, EventArgs e) {
foreach(string f in Request.Files.AllKeys) {
HttpPostedFile file = Request.Files[f];
file.SaveAs("~/Download/"+file.FileName);
}
}
</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>
关键是,实际上,“ Request.Files”是一个空字符串数组,我不明白为什么
我认为您只需要在上传文件命令中添加“ POST”:
byte[] responseArray = uploader.UploadFile(uploadWebUrl, "POST", UploadFilePath);
这是Microsoft的文档: https : //msdn.microsoft.com/zh-cn/library/aa329790(v=vs.71).aspx
其中是UploadFile的方法签名:
public byte[] UploadFile(
string address,
string method,
string fileName
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.