Я читал в другом месте, что DisplayFormat просто использует DataFormatString так же, как string.Format. Я пытаюсь отобразить длинный номер телефона; в консольном приложении работает следующее:
const string PhoneFormat = "{0:###-###-####}";
long? phone = 8005551212;
string s = string.Format(PhoneFormat, phone);
s = "800-555-1212"
Почему, когда я использую его в моем представлении как
@Html.DisplayTextFor(model => model.Patient.Phone)
, отображается 8005551212
Вот модель ...
public class Patient
{
[DisplayFormat(DataFormatString = "{0:###-###-####}")]
public long? Phone { get; set; }
}
Также пробовал DisplayFor, который тоже не работает.
Единственный способ, который мне подходит, это
Html.Raw(string.Format("{0:###-###-####}", Model.Patient.Phone))