2017-04-26 1 views
0

Ich habe Google dieses Problem, aber nicht die Lösung noch.Ich habe auch versucht, die Tutorials sowohl Video-und Text. Ich bin neu zu asp.net, ich habe bereits 'Convention based Routing' versucht aber auf 'attribute routing' in asp.net mvc5 habe ich diesen Fehler bekommen.Dieser Fehler kommt auf dem run/Build der Anwendung. Ich habe routes.MapMvcAttributeRoutes(); verwendet und befolgte die Schritte von vielen Online-Lehrer fast jede Körperlösung war die gleiche, aber es hat mein Problem nicht gelöst.'System.Reflection.TargetInvocationException' beim Start von asp.net mvc5-Anwendung aufgrund von routes.MapMvcAttributeRoutes()

here is error picture

RouteConfig.cs

routes.MapMvcAttributeRoutes();//error occurs on this line 

-Controller

[Route("movies/released/{year}/{month:Regex(//d{2}:Range(1,12)}")] 
public ActionResult ByReleasedDate(int year,int month) 
{ 
    return Content(year+"/"+month); 
    //return View(); 
} 

Fehlerdetails

System.Reflection.TargetInvocationException was unhandled by user code 
    HResult=-2146232828 
    Message=Exception has been thrown by the target of an invocation. 
    Source=mscorlib 
    StackTrace: 
     at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) 
     at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) 
     at System.Web.Mvc.Routing.DefaultInlineConstraintResolver.CreateConstraint(Type constraintType, String argumentString) 
     at System.Web.Mvc.Routing.DefaultInlineConstraintResolver.ResolveConstraint(String inlineConstraint) 
     at System.Web.Mvc.Routing.InlineRouteTemplateParser.GetInlineConstraint(Group constraintGroup, Boolean isOptional, IInlineConstraintResolver constraintResolver) 
     at System.Web.Mvc.Routing.InlineRouteTemplateParser.ParseRouteTemplate(String routeTemplate, IDictionary`2 defaults, IDictionary`2 constraints, IInlineConstraintResolver constraintResolver) 
     at System.Web.Mvc.Routing.DirectRouteFactoryContext.CreateBuilder(String template, IInlineConstraintResolver constraintResolver) 
     at System.Web.Mvc.Routing.DirectRouteFactoryContext.CreateBuilderInternal(String template) 
     at System.Web.Mvc.RouteAttribute.System.Web.Mvc.Routing.IDirectRouteFactory.CreateRoute(DirectRouteFactoryContext context) 
     at System.Web.Mvc.Routing.DefaultDirectRouteProvider.CreateRouteEntry(String areaPrefix, String controllerPrefix, IDirectRouteFactory factory, IReadOnlyCollection`1 actions, IInlineConstraintResolver constraintResolver, Boolean targetIsAction) 
     at System.Web.Mvc.Routing.DefaultDirectRouteProvider.CreateRouteEntries(String areaPrefix, String controllerPrefix, IReadOnlyCollection`1 factories, IReadOnlyCollection`1 actions, IInlineConstraintResolver constraintResolver, Boolean targetIsAction) 
     at System.Web.Mvc.Routing.DefaultDirectRouteProvider.GetActionDirectRoutes(ActionDescriptor actionDescriptor, IReadOnlyList`1 factories, IInlineConstraintResolver constraintResolver) 
     at System.Web.Mvc.Routing.DefaultDirectRouteProvider.GetDirectRoutes(ControllerDescriptor controllerDescriptor, IReadOnlyList`1 actionDescriptors, IInlineConstraintResolver constraintResolver) 
     at System.Web.Mvc.Routing.AttributeRoutingMapper.AddRouteEntries(SubRouteCollection collector, IEnumerable`1 controllerTypes, IInlineConstraintResolver constraintResolver, IDirectRouteProvider directRouteProvider) 
     at System.Web.Mvc.Routing.AttributeRoutingMapper.MapAttributeRoutes(RouteCollection routes, IEnumerable`1 controllerTypes, IInlineConstraintResolver constraintResolver, IDirectRouteProvider directRouteProvider) 
     at System.Web.Mvc.Routing.AttributeRoutingMapper.MapAttributeRoutes(RouteCollection routes, IInlineConstraintResolver constraintResolver, IDirectRouteProvider directRouteProvider) 
     at System.Web.Mvc.Routing.AttributeRoutingMapper.MapAttributeRoutes(RouteCollection routes, IInlineConstraintResolver constraintResolver) 
     at System.Web.Mvc.RouteCollectionAttributeRoutingExtensions.MapMvcAttributeRoutes(RouteCollection routes) 
     at vidly2.RouteConfig.RegisterRoutes(RouteCollection routes) in C:\Users\Awais ahmed\documents\visual studio 2015\Projects\vidly2\vidly2\App_Start\RouteConfig.cs:line 15 
     at vidly2.MvcApplication.Application_Start() in C:\Users\Awais ahmed\documents\visual studio 2015\Projects\vidly2\vidly2\Global.asax.cs:line 17 
    InnerException: 
     HResult=-2147024809 
     Message=parsing "//d{2}:Range(1,12" - Not enough)'s. 
     Source=System 
     StackTrace: 
      at System.Text.RegularExpressions.RegexParser.ScanRegex() 
      at System.Text.RegularExpressions.RegexParser.Parse(String re, RegexOptions op) 
      at System.Text.RegularExpressions.Regex..ctor(String pattern, RegexOptions options, TimeSpan matchTimeout, Boolean useCache) 
      at System.Text.RegularExpressions.Regex..ctor(String pattern, RegexOptions options) 
      at System.Web.Mvc.Routing.Constraints.RegexRouteConstraint..ctor(String pattern) 
     InnerException: 
+0

Bitte senden Sie Ihren Code und alle vollständigen Fehler/Stack-Trace, damit wir Ihnen helfen können. – dstepan

+0

Ich habe Bild und Code dafür hinzugefügt.Das Problem tritt beim Start der Anwendung auf den Routen.MapMvcAttributeRoute(); –

+0

Was wird innere Ausnahme dann geworfen? Klicken Sie auf den Link "Details anzeigen" in der Ausnahmebox, um die Fehlerdetails zu sehen, und geben Sie sie hier an (Hervorhebung der Fehlermeldung, innere Ausnahme und Stack-Trace-Teil). –

Antwort

0

bekam ich die answer..I mein Controller-Code bearbeiten

[Route("movies/released/{year}/{month:Regex(//d{2}:Range(1,12)}")] 
public ActionResult ByReleasedDate(int year,int month) 
{ 
    return Content(year+"/"+month); 
    //return View(); 
} 

diesen

[Route("movies/released/{year}/{month}")] 
public ActionResult ByReleasedDate(int year,int month) 
{ 
    return Content(year+"/"+month); 
    //return View(); 
} 

Durch dieses mein Attribut Start Routing working.But i nicht sicher, warum das so war, können einige erklären diese Tatsache?

+0

Sie haben eine Klammer auf Route Regex fehlt, sollte es wie folgt sein: '{Monat: Regex (\\ d {2}: Bereich (1,12))}'. –

+0

@TetsuyaYamamoto hmm Sie haben Recht, das war das Problem, jetzt hat es funktioniert.Ich bin wirklich erstaunt, dass, warum Visual war Fehler auf 'routes.MapMvcAttributeRoutes();' als der Fehler war bei der Definition der Route. –

Verwandte Themen