У меня есть странная проблема с культурой, которая влияет на мои запросы/результаты структуры сущностей при сравнении дат.
Я использую следующий код, чтобы установить информацию о моей культуре в startup.cs:
var supportedCultures = new[]
{
new CultureInfo("en-GB"),
};
app.UseRequestLocalization(new RequestLocalizationOptions
{
DefaultRequestCulture = new RequestCulture("en-GB"),
SupportedCultures = supportedCultures,
SupportedUICultures = supportedCultures
});
Однако, когда приходит HTTP POST, и я проверяю текущую культуру, используя:
Thread.CurrentThread.CurrentCulture.Name
он возвращает en-US, из-за чего мои запросы entity framework core не могут сравнивать даты.
С запросом структуры сущности en-US все результаты возвращаются MM/DD/YY, а с en-GB результатами являются DD/MM/YY, поэтому, когда я использую предложение where в запросе, например:
event.DateTimeRead.Date == input.Date
... сравнение не работает, что, как я подозреваю, связано с конфликтом форматов даты с текущей культурой.
Будем очень признательны за любые советы о том, как исправить это, чтобы решить эту проблему!