/// <summary>
 /// Applies the convention to the specified application.
 /// </summary>
 /// <param name="application">The <see cref="ApplicationModel">application</see> to apply the convention to.</param>
 public void Apply(ApplicationModel application)
 {
     foreach (var controller in application.Controllers)
     {
         conventionBuilder.ApplyTo(controller);
     }
 }
        public override bool ApplyTo(ControllerModel controllerModel)
        {
            var controllerIntroducedInVersion = controllerModel.GetIntroducedVersion();
            var controllerRemovedAsOfVersion  = controllerModel.GetRemovedVersion();

            ValidateControllerVersions(controllerModel, controllerIntroducedInVersion, controllerRemovedAsOfVersion);

            if (UseApiConvention(controllerIntroducedInVersion, controllerRemovedAsOfVersion))
            {
                return(_apiVersionConventionBuilder.ApplyTo(controllerModel));
            }

            var controller = _apiVersionConventionBuilder.Controller(controllerModel.ControllerType);

            SetControllerApiVersions(controller, controllerIntroducedInVersion, controllerRemovedAsOfVersion);
            SetActionApiVersions(controllerModel, controllerIntroducedInVersion, controllerRemovedAsOfVersion, controller);

            _apiVersionConventionBuilder.ApplyTo(controllerModel);

            return(true);
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Applies the convention to the specified application.
 /// </summary>
 /// <param name="application">The <see cref="ApplicationModel">application</see> to apply the convention to.</param>
 public void Apply(ApplicationModel application)
 {
     if (conventionBuilder.Count == 0)
     {
         foreach (var controller in application.Controllers)
         {
             ApplyAttributeOrImplicitConventions(controller);
         }
     }
     else
     {
         foreach (var controller in application.Controllers)
         {
             if (!conventionBuilder.ApplyTo(controller))
             {
                 ApplyAttributeOrImplicitConventions(controller);
             }
         }
     }
 }