2

ASP.NET MVC 4 アプリケーションと、モデルにバインドされたビューがあります。私はグローバリゼーションに globalize.js を使用し、次のように jQuery 検証も拡張しました。

    <script type="text/javascript">
        $.validator.methods.number = function (value, element) {
            return this.optional(element) ||
                !isNaN(Globalize.parseFloat(value));
        }
    </script>

    <script type="text/javascript">
        jQuery.extend(jQuery.validator.methods, {
            range: function (value, element, param) {
                //Use the Globalization plugin to parse the value        
                var val = $.global.parseFloat(value);
                return this.optional(element) || (
                    val >= param[0] && val <= param[1]);
            }
        });
    </script>

そのため、ビューは "." を使用したドイツの数字で正常に機能します。グループ区切り記号として、「,」をカンマ区切り記号として使用します。

私の問題は、フォームを送信してビューを保存すると、コントローラー アクションが呼び出され、ModelState が無効になることです。「番号は有効な番号ではありません」というエラーが生成されます。「,」のコンマ区切りのみを含むすべての数値が有効です。カルチャは「de-DE」に正しく設定されています。保存する前に何か特別なことをする必要がありますか?

4

2 に答える 2