2013-10-17 226 views
8

在MVC Razor視圖中,需要以百分比形式顯示小數點字段BUT沒有百分比符號。例如22.5將百分比格式化爲百分比以顯示在視圖中?

我的理解可以從模型,它會是這樣的:

[AutoMapIgnore] 
    [DisplayFormat(DataFormatString = "{0:F1}")] 
    public virtual decimal OffPeakMarginPercent { get { return OffPeakMargin * 100; } } 

但沒有做任何 - 影響可言,目前它被顯示爲:

目前顯示爲3.000002.50000

你可以請指導。

我高度評價你的指導和幫助。

編輯:

如果考慮I格式如下,它顯示爲3.02.5

@row.OffPeakMarginPercent.ToString("0.0") 
+0

好做了,你試着去'{0:N1}' – V4Vendetta

回答

12

變化

[DisplayFormat(DataFormatString = "{0:F1}")] 

[DisplayFormat(DataFormatString = "{0:P2}")] 

,並刪除* 100從吸氣

如說here格式爲小數的百分比是PF

+0

我有試過這個,但它仍然顯示爲3.00000。你能看到我的編輯和指南嗎?謝謝 – Toubi

1

使用

[RegularExpression(@"^\d+(\.\d)?$", ErrorMessage = "Only one decimal point value allowed")] 
[Range(0.1,100)] 
public virtual decimal OffPeakMarginPercent { get { return OffPeakMargin * 100; } } 
+0

謝謝@Carlos Landeras,由於某種原因,我無法使用正則表達式。而且它是一個計算領域。你可以請指導爲什麼格式不工作形式模型?請參閱我的編輯。非常感謝。 – Toubi

+0

試試這個:{0:000.0} –