Как сформировать дату в модели и отобразить в представлении, используя get, вместо использования String.Format в представлении MVC? - PullRequest
0 голосов
/ 27 июля 2011

В настоящее время я использую <% = String.Format ("{0: MMM dd, yyyy}", DateTime.Now)%> , чтобы получить сегодняшнюю дату в 27 июля 2011 формат.

Теперь я хочу получить сегодняшнюю дату из модели вместо того, чтобы использовать String.Format на мой взгляд (что не очень хорошо).

Любой может помочь мне сделать это в Model.

Я использую Asp.net MVC2.

Я пытался в своей собственности что-то вроде:

[DisplayName("Display Date")]
[DisplayFormat(DataFormatString = "{0:MMM dd, yyyy}")] 
public DateTime DisplayDate { get; set; } 

И я пытался:

<%= Html.DisplayFor(model => model.DisplayDate) %>

Ответы [ 2 ]

1 голос
/ 27 июля 2011

Странно, мне прекрасно подходит следующее.

Модель:

public class MyViewModel
{
    [DisplayFormat(DataFormatString = "{0:MMM dd, yyyy}")]
    public DateTime DisplayDate { get; set; }
}

Контроллер:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        var model = new MyViewModel
        {
            DisplayDate = DateTime.Now
        };
        return View(model);
    }
}

Просмотр:

<%= Html.DisplayFor(model => model.DisplayDate) %>

Вывод HTML:

Jul 27, 2011
1 голос
/ 27 июля 2011

Ну, вы можете использовать:

<%= DateTime.Now.ToString("MMM dd, yyyy") %>

Но почему String.Format плохо?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...