С учетом доменного объекта:
class BirthdayDomain
{
public DateTime Birthday { get; set; }
public decimal BirthdayPresent { get; set; }
}
У меня есть два варианта передачи этого в строго типизированное представление:
1
class BirthdayView
{
public DateTime Birthday { get; set; }
public decimal BirthdayPresent { get; set; }
}
и в представлении
<%: Model.Birthday.ToString("d"); %>
<%: Model.BirthdayPresent.ToString("C2"); %>
2
class BirthdayView
{
public string Birthday { get; set; }
public string BirthdayPresent { get; set; }
}
и в контроллере (например)
BirthdayDomain bd = Repository.GetBirthday(.....)
BirthdayView bv = new BirthdayView()
{
Birthday = bd.Birthday.ToString("d");
BirthdayPresent = bd.BirthdayPresent.ToString("C2");
}
и в представлении просто выведите строки.
У меня такой вопрос: если я хочу поддерживать текущие настройки локали пользователя (браузера?), Чтобы даты и валюты отображались так, как вы ожидаете, где лучшее место для этого? Это можно сделать либо в виде, либо в контроллере? Каков общепринятый метод для этого?