Привязка списка дат с использованием определенной культуры в asp.net MVC 3 не удается - PullRequest
0 голосов
/ 31 октября 2011

У меня есть такой сценарий, где мне нужно принять три расписания собраний, ниже приведены подробности

Модель расписания собраний

public class MeetingSchedule
{
    public DateTime Date { get; set; }

}

Форма выглядит как

<form action="@Url.Action("Schedule")" method="post" >
    <input type="text" name="meetingSchedules[1].Date" id="schedule2" class="datepicker" />
    <input type="text" name="meetingSchedules[2].Date" id="schedule3" class="datepicker" />
</form>

и Действие

[HttpPost]
public ActionResult Schedule(List<MeetingSchedule> meetingSchedules)
    {}

я установил культуру

<system.web>    
    <globalization uiCulture="en-GB" culture="en-GB" />
</system.web>

Все еще не смог связать Дата в формате "дд / мм / гггг", например: если я выберу любую дату как 2610/2011, связыватель модели не смог связать его, вместо этого отобразить значение DateTime по умолчанию.

Пожалуйста, помогите мне с этим

Спасибо

1 Ответ

2 голосов
/ 09 октября 2012

Я столкнулся с той же проблемой и обнаружил, что проблема с кодом.

Если вы думаете о действии как о простом методе, механизм связывания модели включается при вызове метода действия, перед этим, если вы установили информацию о культуре, тогда все настроено.

В конструкторе добавьте следующий код:

System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-GB");

Теперь попробуйте еще раз, связыватель модели теперь сможет распознавать дату в формате дд / мм / гггг.

...