2017-05-08 118 views
1

guys。我想問一下,是否有無限制地向貨幣格式輸入整數?我一直在使用將int轉換爲貨幣格式

[DisplayFormat(DataFormatString = "{0:C}", ApplyFormatInEditMode = true)] 
public int TotalAmount { get; set; } 

嘗試,但,它會顯示一個空

@ Html.EditorFor

如果我用

[DisplayFormat(DataFormatString = "{0:F2}", ApplyFormatInEditMode = true)] 
public int TotalAmount { get; set; } 

它只會顯示0.00

我想輸入10000時,會自動格式化爲

Rp。 10.000

裏面的@ Html.EditorFor字段。

有什麼建議嗎?

回答

1

嘗試這種情況:

  1. 「C」 或 「c」 貨幣結果:

    [DisplayFormat(DataFormatString = "{0:C}", ApplyFormatInEditMode = true)] public decimal TotalAmount { get; set; }

OR

[DisplayFormat(DataFormatString = "{0:C0}")] 
    public decimal TotalAmount { get; set; } 
  • 「N」 或 「n」 數結果:

    [DisplayFormat(DataFormatString = "{0:N}", ApplyFormatInEditMode = true)] public decimal TotalAmount { get; set; }

  • 實體框架

  • [DataType(DataType.Currency)] public decimal TotalAmount { get; set; }

    EditorTemplates實施例:

    貨幣(~/Views/Shared/EditorTemplates/Currency.cshtml)創建編輯模板:

    Currency.cshtml

    @Html.TextBox("", string.Format("{0:c}", ViewData.Model),new { @class = "text-box single-line" }) 
    

    用途:

    @Html.EditorFor(model => model.TotalAmount, "Currency") 
    

    ,你可以得到更多的信息形式thisthis鏈接。

    +0

    是否需要十進制作爲其模型?因爲它必須讓我改變我的所有模型和數據庫,因爲它們要求使用int作爲值模型。 –

    +0

    我認爲3號。選項('[DataType(DataType.Currency)]')最好,如果你使用** Entity Framework **。@ SionChristian – Ashiquzzaman

    +0

    我不確定我在用什麼。我正在幫助我的大學IT部門開發一個網站。它連接到數據庫。但是,他們如何綁定它,我不確定。 –