質問: 私は10進変数の2桁の精度を保持するためのより良い方法を見つけるのに苦労しています。 ここで私は2つのステップで質問を分けました: **ステップ1:** *SQLクエリ* SQLクエリで2桁の精度を得るために、私は使用しています ``` CONVERT(DECIMAL(10,2), .....) // to get 2 digit precision ``` 実行時には、SSMSで2桁の精度を達成することができます。 ``` NET_TOTAL --------- 10.00 12.50 14.25 ``` **ステップ2:** *C#コード経由* C#コードでは、C#コードに値を格納しようとしたときに2桁の精度が保持されませんでした。 ``` NET_TOTAL --------- 10 //lost my precision 12.5 //lost my precision 14.25 ``` 以下は私の変数宣言です。 ``` public decimal? NET_TOTAL { get; set; } ``` しかし、私はプロパティを使って回避策の匂いを嗅ぐことができますが、それを得ることはできません。 私は使用しています * データベース操作のための[dapper.net](/questions/tagged/dapper.net "「dapper.net」というタグ付きの質問を表示する") * クエリリストをCSVファイルに変換するための**`FileHelper.dll`** 。 この問題を解決する理由と方法を知りたい。 どんな助けでも大歓迎です。 前もって感謝します。
回答: 小数点以下の右端の0は精度がありません。 ただのプレゼンテーションです。 ``` decimal d; d = 10; System.Diagnostics.Debug.WriteLine(string.Format("{0:N2}",d)); ```