Skip to content

Messaggio di errore nell'annotazione requiredif() c# esempio di codice non funzionante

Iris, parte di questo team, ci ha fatto il favore di scrivere questa dichiarazione perché controlla molto bene l'argomento.

Esempio 1: C# ValidationAttribute required when

publicclassRequiredIfAttribute:ValidationAttribute,IClientValidatable{privateString PropertyName {get;set;}privateObject DesiredValue {get;set;}privatereadonlyRequiredAttribute _innerAttribute;publicRequiredIfAttribute(String propertyName,Object desiredvalue){
            PropertyName = propertyName;
            DesiredValue = desiredvalue;
            _innerAttribute =newRequiredAttribute();}protectedoverrideValidationResultIsValid(objectvalue,ValidationContext context){var dependentValue = context.ObjectInstance.GetType().GetProperty(PropertyName).GetValue(context.ObjectInstance,null);if(dependentValue.ToString()== DesiredValue.ToString()){if(!_innerAttribute.IsValid(value)){returnnewValidationResult(FormatErrorMessage(context.DisplayName),new[]{ context.MemberName });}}return ValidationResult.Success;}publicIEnumerable<ModelClientValidationRule>GetClientValidationRules(ModelMetadata metadata,ControllerContext context){var rule =newModelClientValidationRule{
                ErrorMessage = ErrorMessageString,
                ValidationType ="requiredif",};
            rule.ValidationParameters["dependentproperty"]=(context asViewContext).ViewData.TemplateInfo.GetFullHtmlFieldId(PropertyName);
            rule.ValidationParameters["desiredvalue"]= DesiredValue isbool? DesiredValue.ToString().ToLower(): DesiredValue;yieldreturn rule;}}

Esempio 2: C# ValidationAttribute required when

$.validator.unobtrusive.adapters.add('requiredif',['dependentproperty', 'desiredvalue'], function (options){
    options.rules['requiredif']= options.params;
    options.messages['requiredif']= options.message;});

$.validator.addMethod('requiredif', function (value, element, parameters){var desiredvalue = parameters.desiredvalue;
    desiredvalue =(desiredvalue ==null? '' : desiredvalue).toString();var controlType = $("input[id$='"+ parameters.dependentproperty +"']").attr("type");var actualvalue ={}if(controlType =="checkbox"|| controlType =="radio"){var control = $("input[id$='"+ parameters.dependentproperty +"']:checked");
        actualvalue = control.val();}else{
        actualvalue = $("#"+ parameters.dependentproperty).val();}if($.trim(desiredvalue).toLowerCase()=== $.trim(actualvalue).toLocaleLowerCase()){var isValid = $.validator.methods.required.call(this,value, element, parameters);return isValid;}returntrue;});

Commenti e valutazioni del tutorial



Utilizzate il nostro motore di ricerca

Ricerca
Generic filters

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.