3

数値の後に小数点以下 2 桁を表示するにはどうすればよいですか?

私は次のことを試しました:

var hrs = (from p in Hours.Where(h.UserName == UserName())
                              group p by p.Hours into g
                              select g.Sum(p => p.Hours)).Sum().ToString("#.##");

return Json(new { data = Convert.ToDouble(hrs).ToString("#.##") });

しかし、それなしではUIに何も表示されずConvert.ToDouble()ToString("#.##")時間「9」が表示されます

上記のようにデータベースにクエリを実行して取得した結果をどのようにフォーマットしますか?

4

8 に答える 8

2

Linq クエリの結果はIEnumerabl<string>(またはIQueryable<string>) になります。次のようにする必要があります。

var hrs = 
    (from p in Hours.Where(h.UserName == UserName())
     group p by p.Hours into g
     select g.Sum(p => p.Hours));

 return Json(new { data = hrs.Select(x => x.ToString("N2")) });
于 2013-07-22T17:48:37.397 に答える
2

ToString("N2") は、小数点以下 2 桁を表示するために使用されます

var hrs = (from p in Hours.Where(h.UserName == UserName())
                          group p by p.Hours into g
                          select g.Sum(p => p.Hours)).ToString("#.##");
return Json(new { data = Convert.ToDouble(hrs).ToString("N2") });
于 2013-07-22T17:50:59.620 に答える
1

使用するToDouble(hrs).ToString("f2")

于 2013-07-22T17:46:51.057 に答える
0

試す:

Json(new { data = Convert.ToDouble(hrs).ToString("N2") });
于 2013-07-22T17:46:29.090 に答える
0

これを試して:

Json(new { data = String.Format("{0.00}",Convert.ToDouble(hrs))});
于 2013-07-22T17:48:24.143 に答える
0

次のこともできます。

return Json(new { data = Convert.ToDouble(hrs).ToString("#.00") });
于 2013-07-22T17:48:42.160 に答える