खोज…


परिचय

mvc.net मॉडल सत्यापन के लिए डेटा एनोटेशन पेश करता है। यह ज़मरीन में भी किया जा सकता है

सरल उदाहरण है

नगेट पैकेज System.ComponentModel.Annotations जोड़ें ।ComponentModel.Annotations

एक वर्ग को परिभाषित करें:

public class BankAccount  
{  

   public enum AccountType  
   {  
       Saving,  
       Current  
   }  

   [Required(ErrorMessage="First Name Required")]  
   [MaxLength(15,ErrorMessage="First Name should not more than 1`5 character")]  
   [MinLength(3,ErrorMessage="First Name should be more than 3 character")]  
   public string AccountHolderFirstName { get; set; }  

   [Required(ErrorMessage="Last Name Required")]  
   [MaxLength(15,ErrorMessage="Last Name should not more than 1`5 character")]  
   [MinLength(3,ErrorMessage="Last Name should be more than 3 character")]  
   public string AccountHolderLastName { get; set; }  

   [Required]  
   [RegularExpression("^[0-9]+$", ErrorMessage = "Only Number allowed in AccountNumber")]  
   public string AccountNumber { get; set; }  

   public AccountType AcType { get; set; }  
}

एक सत्यापनकर्ता को परिभाषित करें:

public class GenericValidator   
{  
    public static bool TryValidate(object obj, out ICollection<ValidationResult> results)  
    {  
        var context = new ValidationContext(obj, serviceProvider: null, items: null);  
        results = new List<ValidationResult>();  
        return Validator.TryValidateObject(  
            obj, context, results,  
            validateAllProperties: true  
        );  
    }  
}

सत्यापनकर्ता का उपयोग करें:

var bankAccount = new BankAccount();  
ICollection<ValidationResult> lstvalidationResult;  

bool valid = GenericValidator.TryValidate(bankAccount, out lstvalidationResult);  
if (!valid)  
{  
    foreach (ValidationResult res in lstvalidationResult)  
    {  
        Console.WriteLine(res.MemberNames +":"+ res.ErrorMessage);  
    }  
      
}  
Console.ReadLine();

आउटपुट उत्पन्न:

First Name Required
Last Name Required
The AccountNumber field is required.


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow