2011-01-07 6 views
2

私は、検証属性を追加した場合:ASP.NET MVC2 - サーバー側の検証前にフォームから空白を削除しますか?

public class ProductDownloadListModel 
{   
    //xxxxx-xxxxx-xxxxx 
    [Required] 
    [StringLength(17)] 
    public string PSN { get; set; } 
    public DateTime PsnExpirationDate { get; set; } 
    public DataTable Downloads { get; set; } 

} 

を、ユーザーが17文字の文字列を入力するが、最後に空白が含まれた文字列が[StringLength(17)]属性で指定したものよりも大きいので、私は検証エラーを取得します。どうすればこれを防ぐことができますか?私はjavaScriptに提出する前に文字列をトリムする必要がないことを望むだろう。

答えて

3

PSNのためのあなたのセットのトリムを行います。

public string PSN 
{ 
    get 
    { 
     return (this.psn == null) ? string.Empty : this.psn; 
    } 
    set 
    { 
     this.psn = (value == null || value.Trim().Length == 0) ? null :value.Trim(); 
    } 
} 
+0

さて、それは明らかにfrickinだった。 =/ –

+0

ええ、まあ、私は何か明白な何かの上に壁に私の頭を何度も叩いたことを何回も伝えられません。明らかに仕事の一部。 :-) –

1

なぜhtml入力でmaxlength属性を使用しないのですか?

http://www.w3schools.com/tags/att_input_maxlength.asp

+0

問題は通常、ユーザーが別のドキュメントからシリアル番号をコピー&ペーストし、関連する文字列の前後に空白を拾うという点です。私は、maxlengthプロパティが設定されたフィールドにテキストをあまりにも多く貼り付けると余分な文字がトリムされてしまい、小さな頭を傷つけると思います。 –

関連する問題