private AutoDispatchRouteTemplateData(CodeGenerationParameter route) { var aggregate = route.Parent(Label.Aggregate); _parameters = TemplateParameters.With(TemplateParameter.RetrievalRoute, IsRetrievalRoute(route)) .And(TemplateParameter.IdType, StateFieldDetail.TypeOf(aggregate, "id")) .And(TemplateParameter.RouteMethod, route.RetrieveRelatedValue(Label.RouteMethod)) .And(TemplateParameter.RoutePath, PathFormatter.FormatRelativeRoutePath(route)) .And(TemplateParameter.DataObjectName, new TemplateStandard(TemplateStandardType.DataObject).ResolveClassname(aggregate.value)) .And(TemplateParameter.RouteMappingValue, AutoDispatchMappingValueFormatter.Format(route.value)) .And(TemplateParameter.RequireEntityLoading, route.RetrieveRelatedValue(Label.RequireEntityLoading, x => bool.TrueString.ToLower() == x)) .And(TemplateParameter.AutoDispatchHandlersMappingName, new TemplateStandard(TemplateStandardType.AutoDispatchHandlersMapping).ResolveClassname(aggregate.value)) .And(TemplateParameter.MethodName, route.value); }