作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想通过集成测试来测试将文件附加到 RavenDB 数据库中的文档的功能。为此,我需要一个 IFormFile
的实例。
显然,我无法从接口(interface)实例化,所以我尝试实例化 FormFile
的实例。它继承自 IFormFile
接口(interface)。
using (var stream = File.OpenRead("placeholder.pdf"))
{
var file = new FormFile(stream, 0, stream.Length, null, Path.GetFileName(stream.Name))
{
ContentType = "application.pdf"
};
}
但这会引发以下错误:
System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.AspNetCore.Http.Internal.FormFile.set_ContentType(String value)
当我从代码中删除 ContentType = "application.pdf"
时,它允许我实例化一个新实例,但没有 ContentType
。
如何在没有 Moq
框架的情况下使用 ContentType
实例化 FormFile
的实例?
最佳答案
感谢汉斯的评论,实际答案是:
using (var stream = File.OpenRead("placeholder.pdf"))
{
var file = new FormFile(stream, 0, stream.Length, null, Path.GetFileName(stream.Name))
{
Headers = new HeaderDictionary(),
ContentType = "application/pdf"
};
}
关于c# - 如何在没有最小起订量的情况下在 C# 中实例化 FormFile 的实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51704805/
我是一名优秀的程序员,十分优秀!