小数以下の桁数チェックを行いたい


<https://docs.microsoft.com/ja-jp/aspnet/core/tutorials/first-mvc-
app/validation?view=aspnetcore-2.2>  
上記のチュートリアルに従って実装しました。

[code]

    [Column(TypeName = "decimal(18, 2)")]
    public decimal Price { get; set; }
    
[/code]

属性上は、小数以下２桁となっていますが、小数以下を３桁以上入力してもエラーになりません。  
（四捨五入されて登録されます）  
これは既定の動作でしょうか？

クライアントサイド（jQuery validation）、サーバーサイドにて属性に従った小数以下の桁数チェックを行うにはどのように実装すればよいでしょうか。




サーバーサイドなら`RegularExpression`で実装することができます。

[code]

    [RegularExpression(@"^\d+(\.\d{1,2})?$", ErrorMessage = > "少数以下２桁以上は入力できません"] 
    
    public decimal Price {get; set;}
    
[/code]

## 結果

> エラーなし  
>  300  
>  1.  
>  1.0  
>  .5  
>  0.25
>
> エラーあり  
>  1.250  
>  1.555  
>  2.7777777




サーバーサイドなら`RegularExpression`で実装することができます。

[code]

    [RegularExpression(@"^\d+(\.\d{1,2})?$", ErrorMessage = > "少数以下２桁以上は入力できません"] 
    
    public decimal Price {get; set;}
    
[/code]

## 結果

> エラーなし  
>  300  
>  1.  
>  1.0  
>  .5  
>  0.25
>
> エラーあり  
>  1.250  
>  1.555  
>  2.7777777

