ASP. NET Core 3.1 Проблема с локализацией даты - PullRequest
2 голосов
/ 17 марта 2020

У меня проблема с отправкой даты в формате ДД / ММ / ГГ. Это все работает нормально, если я использую формат YY / MM / DD, но мое приложение указано c для Великобритании, поэтому я буду sh только для поддержки этого формата.

Мой метод контроллера начинается следующим образом:

public IActionResult Index(DateTime startDate, DateTime endDate)

, и проблема в том, что оба значения даты просто приходят в 0001-01-01 (DateTime.MinValue)

Элементы управления создаются в .cs html с использованием приведенного ниже.

@Html.TextBox("startDate", "", new { @class = "form-control datepicker", @placeholder = "dd/mm/yy" })

, и это связано с jQuery UP DatePicker. Однако я не верю, что это связано с проблемой, как я уже говорил ранее, она работает, если я перехожу на YY / MM / DD.

Из результатов других вопросов о StackOverflow я попытался добавить следующее, но проблема все еще сохраняется.

Startup.cs:

Метод ConfigureServices:

services.Configure<RequestLocalizationOptions>(options =>
{
    options.DefaultRequestCulture = new RequestCulture("en-GB");
    options.SupportedCultures = new List<CultureInfo> { new CultureInfo("en-GB") };
    options.RequestCultureProviders.Clear();
});

Метод настройки:

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

Я могу подтвердить оба из них делается перед вызовом .Add Mvc () / .Используйте Mvc (), как это было упомянуто в другом вопросе.

Сейчас я немного растерялся, любые идеи будут с благодарностью ,

...