1

如何在另一个项目(用于测试的类库)中生成与控制器、操作和参数(对于给定的 ASP.NET MVC 项目)对应的 URL?

到目前为止,我发现的只是HtmlHelper.GenerateRouteLink,但还没有找到如何传递正确的请求上下文和路由集合。

4

1 回答 1

4

试试这个:

var routes = new RouteCollection();
MvcApplication.RegisterRoutes(routes);

var context = new Mock<HttpContextBase>();

var urlHelper = new UrlHelper(new RequestContext(context.Object, new RouteData()), routes);

var url = urlHelper.Action("action", "controller", new { id = ... });

来自SO - ASP.NET MVC:使用 UrlHelper 的单元测试控制器

于 2009-06-27T15:12:00.490 回答