public override ICommandHandler GetCommandHandler()
        {
            var parameterBinders = ParameterDescriptors
                                   .Select(parameterDescriptor => new ModelBinder(parameterDescriptor))
                                   .ToList();

            if (_invocationTarget == null)
            {
                var invocationTargetBinder =
                    _handlerMethodInfo.IsStatic
                        ? null
                        : new ModelBinder(_handlerMethodInfo.DeclaringType);

                return(new ModelBindingCommandHandler(
                           _handlerMethodInfo,
                           parameterBinders,
                           invocationTargetBinder));
            }
            else
            {
                return(new ModelBindingCommandHandler(
                           _handlerMethodInfo,
                           parameterBinders,
                           _invocationTarget));
            }
        }
        public override ICommandHandler GetCommandHandler()
        {
            var parameterBinders = ParameterDescriptors
                                   .Select(p => new ModelBinder(p))
                                   .ToList();

            return(new ModelBindingCommandHandler(
                       _handlerDelegate,
                       parameterBinders));
        }
예제 #3
0
 private void CreateDefaultSupportedRequestMediaTypes()
 {
     if (ParameterDescriptors.Any(p => p.From == ParameterFrom.Form))
     {
         SupportedRequestMediaTypes.Add("multipart/form-data");
     }
     else
     {
         SupportedRequestMediaTypes.Add("application/json");
         SupportedRequestMediaTypes.Add("text/json");
     }
 }