C# 是否有办法使用System.Net.Http.HttpClient将大型文件推送到远程服务器
我正在尝试使用System.Net.Http.HttpClient将50 MB文件推送到远程服务器:C# 是否有办法使用System.Net.Http.HttpClient将大型文件推送到远程服务器,c#,asp.net,dotnet-httpclient,C#,Asp.net,Dotnet Httpclient,我正在尝试使用System.Net.Http.HttpClient将50 MB文件推送到远程服务器: private async void Transfer_Product_Upgrade_Package(object sender, RoutedEventArgs e) { await UploadFileAsync(); } async Task UploadFileAsync() { string filename = @"C:\AccountView\AccountVi
private async void Transfer_Product_Upgrade_Package(object sender, RoutedEventArgs e)
{
await UploadFileAsync();
}
async Task UploadFileAsync()
{
string filename = @"C:\AccountView\AccountViewPublish\ProductPackage.zip";
Uri uri = new Uri("http://localhost:3748/api/UploadProductPackage/5");
using (var stream = File.OpenRead(filename))
{
var client = new HttpClient();
var response = await client.PostAsync(uri, new StreamContent(stream));
response.EnsureSuccessStatusCode();
}
}
我得到的响应甚至没有击中目标服务器:
响应状态代码不表示成功:413(请求实体太大)
一个较小的文件正在使用相同的精确代码传输
有办法处理较大的文件吗?默认最大IIS 7上载文件大小约为28mb。对于更大的文件大小,您需要使用WebConfig配置IIS 7以允许更大的文件大小:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="2147483648" />
</requestFiltering>
</security>
</system.webServer>
此外,ASP.NET运行时还有其他限制。您可以在此处更改:
<system.web>
<httpRuntime maxRequestLength="2097152" />
</system.web>
查看此以了解更多信息