Сбой привязки списка дат с использованием определенной культуры в asp.net mvc 3

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

модель расписания встреч

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>

По-прежнему не удалось связать дату в формате «дд/мм/гггг», например: если я выберу любую дату как 26/10/2011, связыватель модели не сможет ее связать, вместо этого отобразится значение даты и времени по умолчанию.

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

Спасибо


person Shaik Mohammad Rafi    schedule 31.10.2011    source источник


Ответы (1)


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

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

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

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

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

person ssdeshmukh    schedule 09.10.2012