2012-06-06 5 views
1

이것은 나를 괴롭 히고 있으며 나는 무슨 일이 일어나고 있는지 모른다. 나는 숫자를 적절히 포맷팅하기위한 부분 뷰를 만들었다.부분보기가 작동하지 않는 이유는 무엇입니까?

파일 _PermitNumber.cshtml/Views/Shared이며이 포함

@model System.Int32 
@Html.Raw(Model.ToString("00-0000")) 

를 내 메인 페이지에서 내가 할 :

@Html.DisplayFor(model => model.BuildingPermit.PermitId, "_PermitNumber") 

model.BuildingPermit.PermitIdint으로 정의된다.

내 출력은 예상 12-0456 대신 120456입니다.

무슨 일입니까?

답변

1

출력을 포맷하는 데보기를 사용하는 이유는 무엇입니까? 그것은 당신이보기에 추가하는 불필요한 복잡성과 같습니다. IMO 이것에 대한 더 나은 위치는 뷰 모델의 속성 내에서 다음과 같습니다

public string FormattedPermitNumber 
{ 
    get 
    { 
     return PermitId.ToString("00-0000")); 
    } 
} 

그러나 당신이 당신의 부분보기를 삭제한다면, 귀하의 질문에 대답하기 위해, 당신은 당신의 수는 여전히 120456.로 표시되는 것을 볼 수 있습니다 부분 뷰를 렌더링하려면 다음과 같이 부분을 렌더링해야합니다.

@{ Html.RenderPartial("_PermitNumber", Model.BuildingPermit.PermitId); } 
+0

Doh! 나는 모델에서 그것을해야한다 ... 고마워! –

관련 문제