小编War*_*Ham的帖子

从 C# 将 IFormFile 发布到 webAPI

我有一个 Web API 方法,它接受小型类结构中的 IFormFile 变量列表,以将文件上传到存储帐户。

public class FileInputModel
{
        public int ScenarioId { get; set; }
        public IList<IFormFile> UploadFiles { get; set; }
}


[HttpPost("UploadFiles")]
public async Task<IActionResult> UploadForm([FromForm] FileInputModel files)
{
    //UploadLogic
}
Run Code Online (Sandbox Code Playgroud)

这对于使用 Postman 的 https 帖子来说非常有效,但我似乎不太清楚如何使用我正在编写的直接链接到此 api 的 C# 程序来做到这一点。到目前为止,我已经有了一些代码将 FileStreamResult 变量转换为 IformFile,然后发送发布请求,但我不知道如何从我的电脑上的文件获取 FileStreamResult。这是我迄今为止所采用的方法。

var json = JsonSerializer.Serialize(FileInputModel);
StringContent data = new StringContent(json, Encoding.UTF8, "application/json");

try
{
    using HttpClient client = new HttpClient();

    HttpResponseMessage response = await client.PostAsync(url, data);

    return response;
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-web-api

4
推荐指数
1
解决办法
9330
查看次数

标签 统计

asp.net-mvc ×1

asp.net-web-api ×1

c# ×1