ASP.NET MVC 3 отображает десятичное значение (18,1) в модели из SQL Server 2008 - PullRequest
3 голосов
/ 23 февраля 2012

У меня вопрос к десятичному значению для набора по модели. В моем SQL-сервере тип поля displaySize является десятичным (18,1) Как установить десятичный тип в модели?

Когда я установил как

 public decimal displaySize { get; set; }

Отображается как 21.00, а не 21. Если я поставлю 3.7, то получится 3.70.

Как установить десятичный формат? Звучит простой вопрос, но я новичок MVC 3 в настоящее время. Не могли бы вы дать ответ? Спасибо.

Ответы [ 2 ]

9 голосов
/ 23 февраля 2012

Вы можете использовать DisplayFormatAttribute в свойстве модели:

[DisplayFormat(DataFormatString = "{0:0.###}")]
public decimal displaySize { get; set; }

Выше будет выведено число с точностью до 3 десятичных знаков.

Другие пользовательские числовые форматы и стандартные числовые форматы также могут использоваться.

5 голосов
/ 23 февраля 2012

Вы можете определить формат отображения:

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

, а затем в вашем строго типизированном виде:

@Html.DisplayFor(x => x.displaySize)

или

@Html.EditorFor(x => x.displaySize)
...