繁体   English   中英

从asp.net core web api下载大文件到winforms抛出json长度值过大不支持

[英]Downloading large file from asp.net core web api to winforms throws json value of length is large and not supported

从 ASP.Net Core Web API 下载大文件到 WinForms 时, n长度的 JSON 值太大,不支持。

在 WinForms 中:

Httpcontent httpdata = new StringContent(Jsoncpnvert.Serializeobject(inputmodel),encoding.utf8));

Httpclient client = new httpclient();
MultipartFormDataContent form = new MultipartFormDataContent();
form.add(httpdata,form);

try{
Var response = client.postasync(url,form). result;
Downloadmodel model = response.content.Readasasync<downloadmodel>(). result;

// Here 500 internal server error occurs

}

Server side :

[Httppost]
Public downloadreturnmodel download ()
{

Var httpdata = Request.form["data"];
// Do some process
Result is a downloadreturnmodel 
Return result; 
}

你应该返回一个文件:

[Route("api/[controller]")] 
public class DownloadController : Controller
{
    [HttpGet("{id}"]
    public async Task<IActionResult> Download(string id) 
    { // Do some process
        return File(stream, "application/octet-stream"); // returns a FileStreamResult
    }     
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM