2012-01-31 58 views
1

我的應用程序是用C#.Net編碼的asp.Net MVC3。如何截斷Asp.Net中的小數部分MVC3

我想在文本框中顯示時截斷我的值的小數部分。 這些值的數據類型在數據庫中設置爲十進制,所以即使我保存150它保存爲150.0000。而當它顯示一個特定的記錄它回來爲150.0000,但我不想那樣,我只想要150.

我已經試過

@Html.TextBoxFor(string.Format("Decimal Truncation Format", model => model.myValue)) 

但不是working..The值從很多意見旅行。 所以,我可以在模型本身中有這樣一個截斷,以便它始終應用於該值。

如果不可能,那我該如何實現它。

回答

2

你爲什麼不把你的ViewModel中的屬性修改爲Int32?這應該在瞬間解決你的問題!

編輯:

這是假設你有一個視圖模型。你不應該直接將視圖綁定到你的數據庫,而是視圖特定的模型(ViewModel)。然後,您可以儘可能多地修改該ViewModel,以便滿足View的需求而不是數據庫的需求。

請查看以下鏈接:

祝你好運!

+1

謝謝你的答覆。但是我的項目是我不能改變數據庫定義的階段。 – 2012-01-31 11:54:25

+1

您不必更改數據庫定義,只需要ViewModel。 – 2012-01-31 11:59:06

+1

我已經改變了模型中的DecimalTo Int32,並且我得到這個錯誤。 概念端類型'MyModel.MyClass'中成員'MYValue'的類型'Edm.Decimal'與對象端類型'MyApp.Models'上成員'MYValue'的類型'System.Int32'不匹配。我的課'。 如果我將其更改爲Int32很多Linq在我的應用程序查詢拋出錯誤。 – 2012-01-31 12:04:31

0

另一種解決方案:使用TextBox而不是TextBoxFor,它可讓您用任何值初始化該字段。

@Html.TextBox("myValue",String.Format("{0}", Model.myValue)