Значение скрытого поля отображает неверную дату для просмотра модели

#asp.net #razor #asp.net-core #asp.net-core-mvc

#asp.net #razor #asp.net-core #asp.net-core-mvc

Вопрос:

Период с = 05/10/2016

PeriodTo = 06/10/2016

Вышеуказанный формат даты свойств — дд / мм / гггг, как вы можете видеть на снимке экрана ниже.

введите описание изображения здесь

Однако, когда я нажимаю на кнопку отправки, значения копируются в модель просмотра.

PeriodFrom становится 10/05/2016, а PeriodTo становится 10/05/2016

введите описание изображения здесь

10 становится днем, а 5 — месяцем. Не уверен, почему это происходит. Может кто-нибудь посоветовать?

Запуск

 var supportCultures = new[]
        {
            new CultureInfo("en-GB")
        };

        app.UseRequestLocalization(new RequestLocalizationOptions
        {
            DefaultRequestCulture = new RequestCulture("en-GB"),
            SupportedCultures = supportCultures,
            SupportedUICultures = supportCultures
        });
  

Вид

 <form asp-controller="BragManagement" asp-action="Export" method="get" role="form">
                <input type="hidden" asp-for="@Model.PeriodFrom" />
                <input type="hidden" asp-for="@Model.PeriodTo" />
                <input type="hidden" asp-for="@Model.BragValueTitle" />
                <button type="submit" class="btn btn-pink">Export</button>
 </form> 
  

Метод

 [HttpGet]
    public IActionResult Export(UserVoteDetailSearchViewModel model)
    {

        var result = _userRepository.GetAllUserVoteDetails(model);

        _reportService.GenerateReport(result);

        return View();
    }
  

Просмотр модели

 public class UserVoteDetailSearchViewModel
{
    public DateTime? PeriodFrom { get; set; }
    public DateTime? PeriodTo { get; set; }
    public string BragValueTitle { get; set; }

    public List<UserVoteDetail> UserVoteDetailList { get; set; }
}
  

Комментарии:

1. Это означает, что язык на вашем сервере принимает даты в M/dd/yyyy формате (not dd/MM/yyyy ). Вы можете изменить культуру своего сервера или передать даты в формате ISO yyyy-MM-dd , который будет корректно привязан независимо от культуры сервера

2. Пожалуйста, поделитесь своей формой отправки кода.

3. Отправлен код @StephenMuecke.

4. отправлен код @LateshtClick.

5. Ребята, формат правильный. Однако, когда я заполняю модель представления, 10 становится днем, а 5 — месяцем. Должно быть наоборот. Это очень странная проблема.