我正在尝试使用破折号显示存储为 Varchar(9) 的 SSN。
数据库中的 SSN 存储为 varchar(9),没有破折号。它不存储为数字,因为如果将其存储为数字,则会删除任何前导零。我不能将 DisplayFormat 属性与 DataFormatString = "{0:###-##-####}" 一起使用,因为这似乎仅在 SSN 存储为 Long 类型时才有效。所以,我正在尝试为它创建一个显示模板。我创建了一个名为 SSN 的 .cshtml 文件并将其放置在 Shared 文件夹内的一个名为 DisplayTemplates 的文件夹中,并且我在 Razor 页面上使用 @Html.DisplayFor(modelItem => item.SSN) 来显示 SSN,但掩码我在显示模板中创建的没有生效。
以下是 SSN.cshtml 显示模板中的代码:
@model PFDTrustDomain.Client
<div>
@Model.SSN.Insert(2, "-").Insert(5, "-");
</div>
我希望 SSN 显示为:123-45-6789,但继续显示为:123456789。