PR feedback fixes for logging requestpredicate shortcircuit logging
This commit is contained in:
parent
d80471ad15
commit
4472c00c6f
|
|
@ -642,12 +642,12 @@ namespace Microsoft.AspNetCore.Mvc.Internal
|
|||
_parameterBinderRequestPredicateShortCircuitOfProperty = LoggerMessage.Define<Type, string>(
|
||||
LogLevel.Debug,
|
||||
47,
|
||||
"Skipped binding property '{PropertyContainerType}.{PropertyName}' since it's binding information disallowed it for the current request.");
|
||||
"Skipped binding property '{PropertyContainerType}.{PropertyName}' since its binding information disallowed it for the current request.");
|
||||
|
||||
_parameterBinderRequestPredicateShortCircuitOfParameter = LoggerMessage.Define<string>(
|
||||
LogLevel.Debug,
|
||||
48,
|
||||
"Skipped binding parameter '{ParameterName}' since it's binding information disallowed it for the current request.");
|
||||
"Skipped binding parameter '{ParameterName}' since its binding information disallowed it for the current request.");
|
||||
}
|
||||
|
||||
public static void RegisteredOutputFormatters(this ILogger logger, IEnumerable<IOutputFormatter> outputFormatters)
|
||||
|
|
@ -1324,14 +1324,13 @@ namespace Microsoft.AspNetCore.Mvc.Internal
|
|||
public static void AttemptingToBindParameterOrProperty(
|
||||
this ILogger logger,
|
||||
ParameterDescriptor parameter,
|
||||
ModelBindingContext bindingContext)
|
||||
ModelMetadata modelMetadata)
|
||||
{
|
||||
if (!logger.IsEnabled(LogLevel.Debug))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var modelMetadata = bindingContext.ModelMetadata;
|
||||
switch (modelMetadata.MetadataKind)
|
||||
{
|
||||
case ModelMetadataKind.Parameter:
|
||||
|
|
@ -1367,14 +1366,13 @@ namespace Microsoft.AspNetCore.Mvc.Internal
|
|||
public static void DoneAttemptingToBindParameterOrProperty(
|
||||
this ILogger logger,
|
||||
ParameterDescriptor parameter,
|
||||
ModelBindingContext bindingContext)
|
||||
ModelMetadata modelMetadata)
|
||||
{
|
||||
if (!logger.IsEnabled(LogLevel.Debug))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var modelMetadata = bindingContext.ModelMetadata;
|
||||
switch (modelMetadata.MetadataKind)
|
||||
{
|
||||
case ModelMetadataKind.Parameter:
|
||||
|
|
@ -1410,14 +1408,13 @@ namespace Microsoft.AspNetCore.Mvc.Internal
|
|||
public static void AttemptingToValidateParameterOrProperty(
|
||||
this ILogger logger,
|
||||
ParameterDescriptor parameter,
|
||||
ModelBindingContext bindingContext)
|
||||
ModelMetadata modelMetadata)
|
||||
{
|
||||
if (!logger.IsEnabled(LogLevel.Debug))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var modelMetadata = bindingContext.ModelMetadata;
|
||||
switch (modelMetadata.MetadataKind)
|
||||
{
|
||||
case ModelMetadataKind.Parameter:
|
||||
|
|
@ -1454,14 +1451,13 @@ namespace Microsoft.AspNetCore.Mvc.Internal
|
|||
public static void DoneAttemptingToValidateParameterOrProperty(
|
||||
this ILogger logger,
|
||||
ParameterDescriptor parameter,
|
||||
ModelBindingContext bindingContext)
|
||||
ModelMetadata modelMetadata)
|
||||
{
|
||||
if (!logger.IsEnabled(LogLevel.Debug))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var modelMetadata = bindingContext.ModelMetadata;
|
||||
switch (modelMetadata.MetadataKind)
|
||||
{
|
||||
case ModelMetadataKind.Parameter:
|
||||
|
|
@ -1540,9 +1536,14 @@ namespace Microsoft.AspNetCore.Mvc.Internal
|
|||
|
||||
public static void ParameterBinderRequestPredicateShortCircuit(
|
||||
this ILogger logger,
|
||||
ModelMetadata modelMetadata,
|
||||
ParameterDescriptor parameter)
|
||||
ParameterDescriptor parameter,
|
||||
ModelMetadata modelMetadata)
|
||||
{
|
||||
if (!logger.IsEnabled(LogLevel.Debug))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
switch (modelMetadata.MetadataKind)
|
||||
{
|
||||
case ModelMetadataKind.Parameter:
|
||||
|
|
|
|||
|
|
@ -203,10 +203,11 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding
|
|||
throw new ArgumentNullException(nameof(metadata));
|
||||
}
|
||||
|
||||
Logger.AttemptingToBindParameterOrProperty(parameter, metadata);
|
||||
|
||||
if (parameter.BindingInfo?.RequestPredicate?.Invoke(actionContext) == false)
|
||||
{
|
||||
Logger.ParameterBinderRequestPredicateShortCircuit(metadata, parameter);
|
||||
|
||||
Logger.ParameterBinderRequestPredicateShortCircuit(parameter, metadata);
|
||||
return ModelBindingResult.Failed();
|
||||
}
|
||||
|
||||
|
|
@ -218,8 +219,6 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding
|
|||
parameter.Name);
|
||||
modelBindingContext.Model = value;
|
||||
|
||||
Logger.AttemptingToBindParameterOrProperty(parameter, modelBindingContext);
|
||||
|
||||
var parameterModelName = parameter.BindingInfo?.BinderModelName ?? metadata.BinderModelName;
|
||||
if (parameterModelName != null)
|
||||
{
|
||||
|
|
@ -239,14 +238,14 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding
|
|||
|
||||
await modelBinder.BindModelAsync(modelBindingContext);
|
||||
|
||||
Logger.DoneAttemptingToBindParameterOrProperty(parameter, modelBindingContext);
|
||||
Logger.DoneAttemptingToBindParameterOrProperty(parameter, metadata);
|
||||
|
||||
var modelBindingResult = modelBindingContext.Result;
|
||||
|
||||
if (_mvcOptions.AllowValidatingTopLevelNodes &&
|
||||
_objectModelValidator is ObjectModelValidator baseObjectValidator)
|
||||
{
|
||||
Logger.AttemptingToValidateParameterOrProperty(parameter, modelBindingContext);
|
||||
Logger.AttemptingToValidateParameterOrProperty(parameter, metadata);
|
||||
|
||||
EnforceBindRequiredAndValidate(
|
||||
baseObjectValidator,
|
||||
|
|
@ -256,7 +255,7 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding
|
|||
modelBindingContext,
|
||||
modelBindingResult);
|
||||
|
||||
Logger.DoneAttemptingToValidateParameterOrProperty(parameter, modelBindingContext);
|
||||
Logger.DoneAttemptingToValidateParameterOrProperty(parameter, metadata);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -321,7 +320,7 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding
|
|||
// and we ended up with an empty prefix.
|
||||
modelName = modelBindingContext.FieldName;
|
||||
}
|
||||
|
||||
|
||||
// Run validation, we expect this to validate [Required].
|
||||
baseObjectValidator.Validate(
|
||||
actionContext,
|
||||
|
|
|
|||
Loading…
Reference in New Issue