这个路由寄存器语句的语法是什么

时间:2011-03-08 22:28:14

标签: .net routetable

routes.Add(new Route("Catalog/{color}", new MvcRouteHandler())
{
   Defaults = new RouteValueDictionary(
     new { controller = "Products", action = "List" }
   )
});

我不太了解上面的语法,据我所知,它为RouteTable.Routes集合添加了一个新的路由对象,Route对象有一个构造函数: Route(String,IRouteHandler)和一个属性'默认' ' RouteValueDictionary'类型,但这里的语法是什么,它看起来像c#3.0中的对象初始化表达式,但它调用构造函数,任何人都能解释一下吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

它是一个对象初始化表达式,但这些表达式可以选择包含构造函数参数。通常,当您看到这些初始化表达式时,将使用默认构造函数,在这种情况下,您不需要在new之后的parens。