这让我烦恼,我不知道发生了什么。我创建了一个部分视图来正确格式化数字。
文件_PermitNumber.cshtml
位于/Views/Shared
并包含:
@model System.Int32
@Html.Raw(Model.ToString("00-0000"))
在我的主页上,我这样做:
@Html.DisplayFor(model => model.BuildingPermit.PermitId, "_PermitNumber")
model.BuildingPermit.PermitId
被定义为int
。
我的输出是120456而不是预期的12-0456。
发生了什么事?
答案 0 :(得分:1)
为什么使用视图格式化输出?这似乎是您添加到视图中的不必要的复杂性。 IMO更好的位置将属于您的视图模型的属性:
public string FormattedPermitNumber
{
get
{
return PermitId.ToString("00-0000"));
}
}
但是要回答你的问题,如果你删除了局部视图,你会看到你的号码仍然显示为120456.为了渲染局部视图,你需要按如下方式渲染局部视图:
@{ Html.RenderPartial("_PermitNumber", Model.BuildingPermit.PermitId); }