2013-10-31 30 views
0

我有一個ASP.NET MVC 5項目如下:如何在MVC 5中添加約束解析器?

DefaultInlineConstraintResolver resolver = new DefaultInlineConstraintResolver(); 
resolver.ConstraintMap.Add("notetype", typeof(EnumConstraint<NoteType>)); 
RouteTable.Routes.MapMvcAttributeRoutes(resolver); 
GlobalConfiguration.Configuration.MapHttpAttributeRoutes(resolver); 

在最後一行解析器未在MapHttpAttributeRoutes接受。我怎樣才能做到這一點?

回答

0

試試這個

DefaultInlineConstraintResolver resolver = new DefaultInlineConstraintResolver(); 
resolver.ConstraintMap.Add("notetype", typeof(EnumConstraint<NoteType>)); 
RouteTable.Routes.MapMvcAttributeRoutes(resolver); 
GlobalConfiguration.Configuration.MapHttpAttributeRoutes(new HttpRouteBuilder(resolver)); 
+0

是的,我也嘗試......哪裏是HttpRouteBuilder?我找不到任何地方......我試過System.Web.Http;它不在那裏。 –

+0

HttpRouteBuilder是一個採用標記化路由模板併爲其創建IHttpRoute的類。我正在尋找一個很好的例子,你可以看到並得到它。 –

+0

檢查此鏈接[鏈接](http://aspnetwebstack.codeplex.com/wikipage?title=Attribute%20routing%20in%20Web%20API)並查看擴展性部分。這會給你一個想法。 –

相關問題