我正在提出一份申请,
如果我想在基于C#的应用程序中上传服务器上的数据,该怎么用
我在网络服务中知道这个名字[我不知道如何使用它? ]
1. SOAP,
2. REST,
3. AWS
所以我的问题是,
我可以将数据文件上传到服务器的方式有多少?
我是否必须使用网络服务或以其他方式上传数据文件?
顺便说一下......我只是初学C#和网络服务......所以你可能会发现这个问题很简单。
编辑:
我的应用。是基于Windows的.....
以及将从我的应用程序生成的文件。 ,我想存储在服务器.....
答案 0 :(得分:5)
您无需使用任何精美的“Web服务”技术将数据从客户端应用程序上载到服务器。您可以创建一个简单的ASP.NET Web处理程序并从请求正文中保存输入文件:
public class FileUploader : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string fileName = context.Request.QueryString["FileName"];
byte[] fileData = context.Request.BinaryRead(context.Request.ContentLength);
string path = ...; // decide where you want to save the file
File.WriteAllBytes(path, fileData);
}
public bool IsReusable
{
get { return false; }
}
}
从客户端应用中,您可以使用WebClient.UploadFile
method:
using (var client = new WebClient()) {
client.QueryString["FileName"] = fileName;
client.UploadData(url, inputFileData);
}
这种方法消除了SOAP等协议的开销,并直接在HTTP请求体中发布文件。
答案 1 :(得分:0)
如果您真的想要上传/下载**文件*,您应该选择File Transfer Protocol (FTP)。