この 197000.99996 をこの $197,001 に変更する必要があります
{0:C} を使用する必要があることはわかっています
しかし、配列を使用しているときにこれを行う方法がわかりません。以下はコードです
public ActionResult getAjaxSCs(string PA = null, float AmountList = 0)
{
if (PA != null)
{
var SCList = from x in db.NDE_Actuals_Web
where x.PA == PA
group x by new { x.SPEND_CATEGORY, x.ACCOUNTING_PERIOD} into scgroup
select new { spend_category = scgroup.Key.SPEND_CATEGORY, accounting_period = scgroup.Key.ACCOUNTING_PERIOD, amount = scgroup.Sum(x=> x.Amount)};
SCList = SCList.OrderBy(x => x.spend_category);
Dictionary<string, double[]> SCRow = new Dictionary<string, double[]>();
double[] SCContent = new double[12];
string lastSpendCategory = null;
foreach (var item in SCList)
{
if (lastSpendCategory != item.spend_category)
{
SCContent = new double[12];
}
int accounting_period = int.Parse(item.accounting_period) -1;
SCContent[accounting_period] = (double)item.amount;
SCRow[item.spend_category] = SCContent;
lastSpendCategory = item.spend_category;
}
return Json(SCRow, JsonRequestBehavior.AllowGet);
}
return View();
}
SCRow を変換して、値を通貨形式で送信し、小数点以下を四捨五入する必要があります。ご協力いただきありがとうございます!