le titre semble un peu étrange désolé pour cela. Eh bien, je suis nouveau dans Asp.net MVC 3. Je veux créer un attribut pour ma seule propriété dont le nom est le numéro d'identité nationale.Comment obtenir une valeur d'une propriété dans actionfilter
public class IdentityNumberControl : ActionFilterAttribute
{
public string WrongIdentityNumber { get; set; }
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
if(???)
{
filterContext.HttpContext.Response.Write(WrongIdentityNumber);
return;
}
base.OnActionExecuting(filterContext);
}
}
ma classe membre est ici
public class Member
{
public int ID { get; set; }
[Required(ErrorMessage = "You have to enter your name")]
[StringLength(50, ErrorMessage ="Your name length can not be less than{2} more than {1} ", MinimumLength = 3)]
[Display("Name :")]
public string Name { get; set; }
[Required(ErrorMessage = "You have to enter your surname")]
[StringLength(40, ErrorMessage = "Your surname length can not be less than{2} more than {1} ", MinimumLength = 2)]
[Display("Surname :")]
public string SurName { get; set; }
[Required(ErrorMessage = "You have to enter your password")]
[StringLength(20, ErrorMessage = "Your name lengt can not be less than{2} more than {1} ", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display("Password :")]
public string Password { get; set; }
public string PasswordSalt { get; set; }
[IdentityNumberControl(WrongIdentityNumber = "It is not a valid identity number")]
public double IdentityNumber { get; set; }
}
donc je veux vérifier identitynumber est vrai ou non (j'ai une méthode de calcul pour le confirmer) Je sais que je dois écrire du code dans la classe IdentityNumberControl . Mais je ne sais pas comment obtenir la valeur de identitynumber dans la méthode OnActionExecuting.
J'espère expliquer mon problème
okay j'ai découvert la solution. J'ai implémenté ValidationAttribute au lieu de ActionFilterAttribute :) – unbalanced
Si vous avez trouvé votre solution, postez-la comme réponse et acceptez-la. De cette façon, les futurs utilisateurs comprennent comment résoudre le problème. – rae1