我有单元测试代码:
var result = (RedirectToRouteResult)controller.Create();
Assert.AreEqual("AddUnits", result.RouteValues["action"]);
Run Code Online (Sandbox Code Playgroud)
但是result.RouteValues ["action"]给了我错误: 无法将带有[]的索引应用于System.Web.Routing.RouteValueDictionary类型的表达式 我使用ASP.NET MVC 4
虽然RedirectToRouteResult在System.Web.Mvc程序RouteValueDictionary集中定义,但是在程序集中定义System.Web(因为它ASP.Net Routing是在MVC框架之前引入的mechansim 的一部分).
尝试System.Web在测试项目中添加引用,看看是否有帮助.