gpt4 book ai didi

c# - 模拟 HttpPostedFileWrapper

转载 作者:行者123 更新时间:2023-11-30 14:15:06 24 4
gpt4 key购买 nike

我正在尝试模拟 MVC 对象 HttpPostedFileWrapper,以便我可以特别测试“ContentType”和“InputStream”属性。我这样设置我的模拟:

var mockPostedFile = new Mock<HttpPostedFile>();
var mockFileWrapper = new Mock<HttpPostedFileWrapper>(mockPostedFile);
mockFileWrapper.Setup(file => file.ContentType).Returns("application/pdf");
mockFileWrapper.Setup(file => file.InputStream).Returns(fileStream);

但是我在第一行得到了这个异常:

Type to mock must be an interface or an abstract or non-sealed class.

如果我将 HttpPostedFile 更改为 HttpPostedFileBase 我在调用 mockFileWrapper.Object

时会遇到此异常

Can not instantiate proxy of class: System.Web.HttpPostedFileWrapper. Could not find a constructor that would match given arguments: Moq.Mock`1[System.Web.HttpPostedFileBase]

有谁知道我可以做些什么来实现这一点?

最佳答案

你应该模拟 HttpPostedFileBase,而不是 HttpPostedFileWrapper

关于c# - 模拟 HttpPostedFileWrapper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10643083/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com