Como el título mencionado, quiero deshabilitar Validación automática de modelo para un Controlador/Acción específico.¿Cómo deshabilitar la validación automática de ModelState para un controlador/acción específico?
¿Es esto posible?
Como el título mencionado, quiero deshabilitar Validación automática de modelo para un Controlador/Acción específico.¿Cómo deshabilitar la validación automática de ModelState para un controlador/acción específico?
¿Es esto posible?
Creo que es posible. Crear ModelValidatorProvider personalizado.
public class CustomModelValidatorProvider
: DataAnnotationsModelValidatorProvider
{
protected override IEnumerable<ModelValidator> GetValidators(
ModelMetadata metadata,
ControllerContext context,
IEnumerable<Attribute> attributes)
{
return Enumerable.Empty<ModelValidator>();
}
}
y configure este proveedor al inicio.
ModelValidatorProviders.Providers.Clear();
ModelValidatorProviders.Providers.Add(new CustomModelValidatorProvider());
¿Qué le parece esto?
considerar la limpieza del diccionario Modelstate
en la acción del controlador en lugar llamando al:
Modelstate.Clear();
Esa es una manera, a la derecha. Pero si lo hago de esa manera lo pierdo en todas partes. Correcto ? Lo hice con un ModelBinder personalizado, así puedo decidir dónde funciona. – dknaack
Cómo obtener información de acción desde dentro de GetValidators? – Eduardo
¿dónde pones los códigos que escribiste a continuación? – ejmtv