проблема конвертации дд.мм.гггг в мм / дд / гггг в мвк - PullRequest
0 голосов
/ 18 апреля 2011

У меня есть поле даты и времени в базе данных, и я использую свойство DateTime для даты.

Я отображаю дату в текстовом поле в формате "дд.мм.гггг"

@Html.TextBox("Validity", Model.Validity.ToString("dd.MM.yyyy"))

Теперь я должен сохранить его в базе данных. Это означает, как я могу присвоить это значение свойству, чтобы иметь возможность получать данные в моем контроллере.

Спасибо.

Ответы [ 2 ]

1 голос
/ 18 апреля 2011

Поскольку вы не объяснили, с какими проблемами вы сталкиваетесь с этим кодом, вот пример, который сработал для меня и позволил мне успешно извлечь дату, сохраненную в формате dd.MM.yyyy, в действии POST.

Модель:

public class MyViewModel
{
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd.MM.yyyy}")]
    public DateTime Validity { get; set; }
}

Контроллер:

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

    [HttpPost]
    public ActionResult Index(MyViewModel model)
    {
        return View(model);
    }
}

Вид:

@model MyViewModel
@using (Html.BeginForm())
{
    @Html.EditorFor(x => x.Validity)
    <input type="submit" value="OK" />
}
1 голос
/ 18 апреля 2011

В вашем контроллере вы можете получить это поле, используя вашу модель или коллекцию FormsCollection. Оттуда вы можете отформатировать «.»точка в формате, который вы ожидаете.

Если вы передадите это SQL как SQLDBType.DateTime, все будет в порядке ..

...