我知道 Thunderdome 原理的基本概念(一个对象进入,一个对象离开),但我在 asp.net mvc 中没有看到任何真实世界的示例。是雷电原理的好例子吗
public ActionResult Index(Employee employee)
{
//some actions here
return View(employeeViewModel);
}
但是声明呢
Controller 类永远不会直接暴露给与 HttpContext 相关的任何内容
动作调用者应该是什么样子?你能提供一些例子和单元测试吗?
“Thunderdome 原则”——所有 Controller 方法都接受一个 ViewModel 对象(或在某些情况下为零个对象)并返回一个 ViewModel 对象(一个对象进入,一个对象离开)。Controller 类永远不会直接暴露给与 HttpContext 相关的任何内容。没有什么比看到人们尝试编写模拟或存根新 IHttpContextWrapper 接口的测试更让我哭泣的了。同样,Controller 方法不返回 ViewResult 对象,并且通常与所有 MVC 基础结构分离。我们很早就采用了这种策略,以使控制器测试在机械上更简单。
但我想知道该怎么做?如何编写这样的控制器动作调用程序?因为通常我们必须模拟 httpcontext