2

私は文化、MVC3とデータ注釈での作業に問題を抱えています。私はいくつかのフィールドがDECIMAL(18,2) NOT NULLとしてSQLで定義されているスペイン語データベース(COLLATION is set for LATIN_GENERAL);にテーブルSTORESを定義しました。私のMVC3アプリケーションでは、すでにweb.configファイルの "es-ES"のカルチャを設定しています。また、私は強く型付けされたすべての私の意見を使用しています。データ注釈+ MVC3 +文化問題

検証にDataAnnotationsを使用すると、Required fieldThe field must be a numberの検証が自動的に追加されます。それは一つのことを除いて、完璧になる:(。)

The field must be a number検証は、小数点区切りの代わりにカンマ(、)などのドットを使用するように私を余儀なくされます。だから、私はそれをどのように変更するか、このエラーメッセージをどのように翻訳するか分からない。それからjquery(ugly-solution)でコンマの代わりにドットを使うようにユーザーを強制するかもしれないと思った。だから、私はちょうどいくつかのテストを行いました。その結果、私はバリデーションを渡し、オブジェクトをデータベースに完全に作成することができました。

しかし、ここでは、私は、同じオブジェクトを製作中だとき、それは代わりにドットの小数点区切りとしてカンマで私と同じ、強く型付けされたフォームに示されています、奇妙来ます。だから問題は何ですか?ユーザーがオブジェクトのエディションを決して提出できないこと。

私は間違っていますか?

  1. Added the proper collation to the database.
  2. Added the globalization attribute on the web.config file.
  3. I even tried this MVC 3 jQuery Validation/globalizing of number/decimal field with no success...

これは適切な方法ですか?

おかげ

+0

されているクライアント側またはサーバ側のoccuring問題?つまり、検証エラーの前にポストバックが発生しますか? –

+0

クライアント側。ポストバックはありません。検証エラーはjavascriptedです。私はjqueryが小数点の区切りをどのように取り扱うかと関係があると考えています。 –

+0

古い質問が、これは私のためのトリックでした:http://stackoverflow.com/questions/5199835/mvc-3-jquery-validation-globalizing-of-number-decimal-field – VinnyG

答えて

0

さて、あなたはクライアント側の検証をオフにし、あるいはこのようないくつかのハックを適用することができ、次のいずれか

http://blog.brainnovative.com/2010/12/globalizing-aspnet-mvc-unobtrusive.html

+0

私は、ステップをあなたのリンクのハックを試してみました私はjavascriptのエラーを取得します: "TypeError:プロパティ 'es - ESの未定義"を読むことができません "...それはあなたのために働いたのですか? –

+0

@ met.lord - 物事が少し変わったように見えるので、あなたは適応しなければなりません。ここでjqueryのグローバリゼーションをダウンロードしましたか? https://github.com/jquery/globalize –

+0

私はmet.lord @ –