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」に正しく設定されています。保存する前に何か特別なことをする必要がありますか?