Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用cUrl从ASP.NET MVC3网站上载文件?_C#_Asp.net Mvc_Curl - Fatal编程技术网

C# 如何使用cUrl从ASP.NET MVC3网站上载文件?

C# 如何使用cUrl从ASP.NET MVC3网站上载文件?,c#,asp.net-mvc,curl,C#,Asp.net Mvc,Curl,我需要上传一个文件到RackSpace的云文件 在他们的API页面上有一个cUrl中的示例,有人知道如何在C#中实现它吗 任何一个北方人都会非常感激,因为我的搜索没有任何帮助,我在这里找到的所有代码看起来都很像一个普通的上传 下面是我需要在C#中工作的示例: 我只是想说清楚,我不想让任何人帮我做我的工作,我只是需要一些指导或者像我说的那样 谢谢。您可以使用HttpWebRequest将PUT请求发送到服务或更新的HttpClientapi 见下面的示例 var client = new Http

我需要上传一个文件到RackSpace的云文件

在他们的API页面上有一个cUrl中的示例,有人知道如何在C#中实现它吗

任何一个北方人都会非常感激,因为我的搜索没有任何帮助,我在这里找到的所有代码看起来都很像一个普通的上传

下面是我需要在C#中工作的示例:

我只是想说清楚,我不想让任何人帮我做我的工作,我只是需要一些指导或者像我说的那样


谢谢。

您可以使用
HttpWebRequest
将PUT请求发送到服务或更新的
HttpClient
api

见下面的示例

var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-Auth_User", "your_username");
client.DefaultRequestHeaders.Add("X-Auth-Key", "your_api_key");

 client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("image/pjpeg"));

var bytes = File.ReadAllBytes(imagePath);
var ms = new MemoryStream(bytes);

 client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("image/pjpeg"));
 var content = new StreamContent(ms);


 var response = client.PutAsync("YOUR_RACKSPACE_URI", content);

所以我会以常规方式发送文件,只使用PUT as request方法?我不确定rackspace云文件是如何工作的,但我猜在您可以上传之前,它们将进行某种身份验证。它们是这样的,我知道我必须使用NetworkCredentials。但我只是想确认一下,这将是一个定期上传,对吗?我刚才在搜索HttpClient,看到它是用于WCF的,它对非WCF有效吗?好的,谢谢你的回答,我现在就试试,如果有效的话,我会接受答案。谢谢您的时间。@eestein我已经用一个可能有用的示例更新了我的答案。
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-Auth_User", "your_username");
client.DefaultRequestHeaders.Add("X-Auth-Key", "your_api_key");

 client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("image/pjpeg"));

var bytes = File.ReadAllBytes(imagePath);
var ms = new MemoryStream(bytes);

 client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("image/pjpeg"));
 var content = new StreamContent(ms);


 var response = client.PutAsync("YOUR_RACKSPACE_URI", content);