2011-02-23 4 views
0

데이터베이스에 설정된 비율을 유지하는 것처럼 보이는 viewmodel이 있습니다. 나는 돈을 표현하기 위해 십진수 (18,4)로 저장된 SQL의 3 개의 업데이트 할 수있는 필드를 가지고있다. 내 viewmodel의 값을 소수점 이하 두 자리로 지정하여보다 선명하게 보이고 싶습니다.소수점 모양이 뷰 모델에 지속됩니다.

내 뷰 모델은 다음과 같습니다

[DisplayFormat(DataFormatString = "{0:F2}",ApplyFormatInEditMode=true)] 
    [DisplayName("Value 1")] 
    public decimal Value1 { get; set; } 

내보기는 다음과 같습니다 : 값이 나는 텍스트의 값을 표시하기 위해 온 그래서 0의 기본 값을 부여

<%:Html.EditorFor(m => m.Value1)%> 

상자에서 값은 여전히 ​​데이터베이스에 설정된 비율을 유지합니다.

그래서 내 출력은 다음과 같습니다.

Value 1: 0.0000 
Value 2: 0.0000 
Value 3: 0.0000 

왜 이런 일이 발생했는지 또는 어떻게보기에서 해결할 수 있는지 알고 계신가요?

답변

2

메타 데이터를 원하는 경우 등 [DisplayFormat] 속성을 사용하는 당신은 귀하의 의견에 EditorFor/DisplayFor 헬퍼가 필요합니다

<%= Html.EditorFor(x => x.Value1) %> 

나 :

<%= Html.DisplayFor(x => x.Value1) %> 

대신 :

<%= Html.TextBoxFor(x => x.Value1) %> 
+0

의견을 보내 주셔서 감사합니다. -하지만 이미 EditorFor를 사용하고 있습니다. (내 의견이 업데이트되었습니다) – nologo

+0

@nologo,이 작품은 나를 위해. 텍스트 상자를 사용하는 사용자 정의 편집기 템플릿이 없다고 확신합니까? –

+0

여전히 문제가 .. 만약 내가 2 자리로 데이터베이스를 설정합니다. 괜찮아. nullable 소수를 사용하여 .. – nologo

관련 문제