C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■90035 / 1階層)  TextBoxForでHttppost時の通貨書式→数値変換
□投稿者/ WebSurfer (1738回)-(2019/01/31(Thu) 18:05:12)
No90016 (ジョディー さん) に返信

Controller のコードが不明、Model と View のコードの整合がとれてないなど不明な点が
ありますが、分かる範囲で回答しておきます。

> Model定義通りに"\"や","を除いたDecimalで返したいのですが、
> それらの文字を除くコードを追加しないといけないのでしょうか?

それは自分が知る限り無理なので(少なくとも、現実的ではないので)、

(1) DisplayFor 等を使った表示の場合のみ書式設定を行い、

(2) 編集操作に入ってテキストボックスに値を表示する場合は書式設定しない(または、"{0:F0}"
  などの書式設定に留め、数字として不正な文字は表示されないようにする)。

・・・としてはいかがですか? ASP.NET Web Forms アプリで使う GridView などではそれがデフ
ォルトの動きです。

どうしてもテキストボックスに表示する文字列も \12,345,678 のようにしたいということであれば、
decimal 型ではなく string 型として扱い、検証はデータアノテーション属性を付与して正規表現
で行なうということも考えられますが、DB のフィールドの型が money 型でしょうから、サーバー
側での取り扱いを考えると現実的ではなさそうです。

ユーザーとしても、編集する際にいちいち \ とか , を入力するのは煩わしいはずで、喜んではくれ
ないのでは?
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←TextBoxForでHttppost時の通貨書式→数値変換 /ジョディー →Re[2]: TextBoxForでHttppost時の通貨書式→数値変換 /ジョディー
→Re[2]: TextBoxForでHttppost時の通貨書式→数値変換 /ジョディー
 
上記関連ツリー

TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/01/31(Thu) 00:19) #90016
Re[1]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/01/31(Thu) 07:11) #90018
TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/01/31(Thu) 18:05) #90035 ←Now
  ├ Re[2]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/01/31(Thu) 22:54) #90037
  │└ Re[3]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/02/01(Fri) 09:51) #90043
  └ Re[2]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/01/31(Thu) 23:05) #90038
    └ Re[3]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/02/01(Fri) 10:47) #90045
      └ Re[4]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/02/01(Fri) 18:15) #90058 解決済み
        └ Re[5]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/02/01(Fri) 18:31) #90059
          └ Re[6]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/02/06(Wed) 23:52) #90083
            └ Re[7]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/02/07(Thu) 11:22) #90085
              ├ Re[8]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/02/07(Thu) 23:07) #90092
              └ Re[8]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/02/08(Fri) 02:29) #90093
                └ Re[9]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/02/08(Fri) 12:20) #90095
                  └ Re[10]: TextBoxForでHttppost時の通貨書式→数値変換 / ジョディー (19/02/08(Fri) 21:02) #90103 解決済み
                    └ Re[11]: TextBoxForでHttppost時の通貨書式→数値変換 / WebSurfer (19/02/10(Sun) 16:07) #90123 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信