gpt4 book ai didi

asp.net-mvc-3 - MVC 3 Controller 上的单元测试为结果返回 null,但我可以在立即窗口中看到它们

转载 作者:行者123 更新时间:2023-12-04 18:46:21 25 4
gpt4 key购买 nike

我是 MVC 和单元测试的新手。我正在使用 Visual Studio 单元测试框架来测试产品 Controller 。 Controller 在实际网站上工作,但在单元测试中总是返回 null。我已经切换了关键字,例如 ViewResult 或模型名称,但它们都不起作用,因为 Controller 总是返回 null。然后我放置断点并开始调试测试代码。当我在立即窗口中测试它时,它具有值(value)。

我在这里缺少什么?

我有这个网址的截图:http://i.imgur.com/XBmoh.png
在屏幕截图中,您可以看到模型从 Controller 成功传递的即时窗口,P4 P5 存储在结果中。它只是在 UnitTest 中不起作用。

List 代码非常简单,在网站上运行良好。这是代码

    public int PageSize = 4;
private IProductRepository repository;

public ProductController(IProductRepository productRepository)
{
repository = productRepository;
}

public ViewResult List(int page=1)
{
ProductsListViewModel viewModel = new ProductsListViewModel
{
Products = repository.Products
.OrderBy(p => p.ProductID)
.Skip((page - 1) * PageSize)
.Take(PageSize).AsEnumerable(),
PagingInfo = new PagingInfo
{
CurrentPage = page,
ItemsPerPage = PageSize,
TotalItems = repository.Products.Count()
}
};

return View(viewModel);
}

最佳答案

以前遇到过这个问题,您在项目中没有使用相同版本的 System.Web.Mvc。您必须在主项目和单元测试项目中引用相同版本的 System.Web.Mvc。

关于asp.net-mvc-3 - MVC 3 Controller 上的单元测试为结果返回 null,但我可以在立即窗口中看到它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13571479/

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