2013-05-21 33 views
6

私はASP.NET MVC 4を使用していますが、私は郵便番号の検証ASP.NET MVC 4郵便番号の検証

[Required(ErrorMessage = "Zip Code is Required")] 
[ZipCode] 
public string ZipCode { get; set; } 

の属性を探しています私は、これは動作しません知っているが、これはどのような私です探しています。

誰もが、私はあなたが正規表現を使用する必要がちょうどUSA

+1

? – SLaks

+1

申し訳ありませんが、私はそれについて言及しませんでした。上記の説明に追加します。 – user2406346

+0

郵便番号の確認は国によって異なります。プロパティー属性の使用は、検証を行うために複数のプロパティーからの入力を受け入れることができないため、間違ったアプローチです。ちょうどコントローラの検証を行います。 – Triynko

答えて

17

のための郵便番号が必要

を助けることができます。このようなことを試してみてください。どの国で

[Required(ErrorMessage = "Zip is Required")] 
[RegularExpression(@"^\d{5}(-\d{4})?$", ErrorMessage = "Invalid Zip")] 
public string Zip { get; set; } 
1
[Display(Name = "Zip Code")] 
[StringLength(10, MinimumLength = 5)] 
[RegularExpression("(^\\d{5}(-\\d{4})?$)|(^[ABCEGHJKLMNPRSTVXY]{1}\\d{1}[A-Z]{1} *\\d{1}[A-Z]{1}\\d{1}$)", ErrorMessage = "Zip code is invalid.")] // US or Canada 
[Required(ErrorMessage = "Zip Code is Required.")] 
public String ZipCode { set; get; } 
+0

あなたの答えにはコードだけでなく説明が含まれているはずです。 – Jan