gpt4 book ai didi

c# - 无法将 List> 转换为 List

转载 作者:太空宇宙 更新时间:2023-11-03 12:51:08 25 4
gpt4 key购买 nike

我有一个单元测试,我正在模拟 HttpPostedFileBase 文件并将它们放在列表中。单元测试然后像这样调用邮件服务(不相关的参数,如 to、from、subject 被忽略)

[Test]
public void SendMailWithFile()
{
bool result = Services.Mail.MailService.SendMailWithFile(uploadedFiles);

uploadedFiles 变量是这样的:List<Mock<HttpPostedFileBase>> uploadedFiles

mailService(单元测试调用的)是这样的:

public static bool SendMailWithFile(List<HttpPostedFileBase> uploadedFiles)

现在一切都应该没问题了,模拟列表确实包含文件(意味着它不是空的),但我收到了这个错误。

无法从

转换
System.Collections.Generic.List<Moq.Mock<System.Web.HttpPostedFileBase>

System.Collections.Generic.List<System.Web.HttpPostedFileBase>

最佳答案

您必须使用 ObjectHttpPostedFileBase 中获取模拟对象(在您的情况下为 Mock<T>)的属性对象。

应该这样做:

bool result = Services.Mail.MailService.SendMailWithFile(
uploadedFiles.Select(x => x.Object).ToList());

关于c# - 无法将 List<Moq.Mock<System.Web.HttpPostedFileBase>> 转换为 List<System.Web.HttpPostedFileBase>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35486755/

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