具有 FromForm 绑定到 IFormFile 属性的 C# 集成测试控制器

我在用着:

  • Visual Studio 2017 专业版

  • 点网核心SDK 2.2.102

  • XUnit 2.4.1

我想做什么

集成测试接受表单数据的 API 控制器方法。

设置

  • [FromForm]我的控制器中的 API 路由使用属性接受 CommandObject

  • CommandObject 的属性之一是类型List<IFormFile>,它旨在管理属于请求一部分的任何文件

  • 当我从 Postman 手动测试 Controller 方法时,它按预期工作。

问题

文件未绑定到List<IFormFile>属性。其他一切都按预期工作,但文件没有。这是我第一次使用多部分表单数据,所以我不确定要尝试什么。

当我调试测试时,您可以看到除了属性之外的所有内容都有效Documents(注意,这与下面的代码不 100% 匹配,因为我不得不混淆一些东西)

http://img3.mukewang.com/644c7a7e00014d0d20600699.jpg

我看过的东西

有很多与多部分表单数据相关的东西,我尝试过的一些解决方案是:

我的集成测试.cs

我的集成测试设置背后有很多代码。如果我把它全部贴在这里,我认为它不会很有帮助。最重要的信息是变量server是类型Microsoft.AspNetCore.TestHost.TestServer


呼如林
浏览 166回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP