asp.net-mvc - 难以启动基本单元测试(我书中的示例——SportsStore)

标签 asp.net-mvc unit-testing

我真的是 TDD 的新手,实际上,我正在尝试遵循我书中的示例( SportsStore -- Pro ASP.NET MVC Framework/Steve Sanderson/APRESS )。我在第 103-105 页。

尽管有更多关于这方面的内容,但作为所有这些的新手,我对以下陈述感到担忧。

ProductsController controller = new ProductsController(repository);
var result = controller.List(2);
     //...

关于上述陈述,当我写这篇文章时(如书中),
var products = result.ViewData.Model as IList<Product>;

我收到编译器错误“System.Web.MVC.ActionResult”不包含 ViewData 的定义...”但是,当我从语句中删除 List() 时,编译器错误消失了。
var result = controller.List(2);//Doesn't work
var result = controller;//It works

有什么问题吗?我查看了 Apress 网站上的那本书,但没有列为勘误表或问题。 所以我真的很失落。

谢谢你的帮助

最佳答案

那是因为 actionresult 不包含 viewdata 的定义但是 viewresult 包含并且 viewresult 实际上是一个 actionresult 所以你可以将它转换为 (ViewResult) 然后获取 viewdata

关于asp.net-mvc - 难以启动基本单元测试(我书中的示例——SportsStore),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2732938/

相关文章:

c# - MVC API 在正文中发送数据

c# - 在 ASP.net MVC 5 中为模型创建隐藏字段时出错

unit-testing - 将在设备上运行的单元测试添加到现有的 Xcode 4 项目

c# - 使用 Moq 验证调用的顺序是否正确

java - 使用 JUnit 在多线程环境中测试方法行为?

c# - 避免for循环为网格显示带来表格相关信息

asp.net - Web (asp.net) 环境中长时间运行的操作(线程)

.net - MVC EF 上下文实例

unit-testing - 您如何对业务应用程序进行单元测试?

c# - 如何在 Xamarin 中测试共享代码