Search code examples
entity-frameworkvalidationmodel-view-controllerasp.net-mvc-5

MVC 5 Entity Frame work display name not allowing to enter ten digit number giving error "Value is not valid for"?


i have this property in my entity class,

[Display(Name = "Phone", ResourceType = typeof(Resources.Resource))]
public Nullable<int> Phone { get; set; }

i enter ten digit number it gives me error

"The value '5698452136' is not valid for"

if i enter 9 digits than ok

i have not apply any validation just display name according to language.

But id i remove Display property it works fine. why it is giving me validation error ?

EDITED:

Sorry my mistake on my required attribute it is giving this error,

 [Required(ErrorMessageResourceType = typeof(Resources.Resource),
          ErrorMessageResourceName = "PhoneRequired")]

after adding above required i am getting error as i mentioned above and works fine if i remove it

Hopes for your suggestions

Hopes for your suggestions


Solution

  • You want to change type from int to long as max value for integer is 2,147,483,647 and you are trying to pass 5,698,452,136 which exceeds the upper boundary.

    [Display(Name = "Phone", ResourceType = typeof(Resources.Resource))]
    [Required(ErrorMessageResourceType = typeof(Resources.Resource),
              ErrorMessageResourceName = "PhoneRequired")]
    public Nullable<long> Phone { get; set; }