internal RestControllerMethodInfo( MethodInfo methodInfo, Func <object[]> constructorArgs, TypeWrapper typeWrapper) { constructorArgs.GuardNull(nameof(constructorArgs)); _uriParser = new UriParser(); _matchUri = GetUriFromMethod(methodInfo); ReturnTypeWrapper = typeWrapper; ControllerConstructorArgs = constructorArgs; MethodInfo = methodInfo; _validParameterTypes = GetValidParameterTypes(); _parameterGetters = GetParameterGetters(methodInfo); Verb = GetVerb(); Type contentParameterType; HasContentParameter = TryGetContentParameterType(methodInfo, out contentParameterType); ContentParameterType = contentParameterType; }