mirror of
https://github.com/bitwarden/server.git
synced 2024-11-21 12:05:42 +01:00
[SM-412] Remove postgres timezone legacy behavior (#2547)
This commit is contained in:
parent
452891b39e
commit
b1dfbe7519
@ -21,10 +21,10 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"dotnet-ef": {
|
"dotnet-ef": {
|
||||||
"version": "6.0.11",
|
"version": "6.0.12",
|
||||||
"commands": [
|
"commands": [
|
||||||
"dotnet-ef"
|
"dotnet-ef"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -157,20 +157,10 @@ public class DatabaseContext : DbContext
|
|||||||
{
|
{
|
||||||
if (property.ClrType == typeof(DateTime) || property.ClrType == typeof(DateTime?))
|
if (property.ClrType == typeof(DateTime) || property.ClrType == typeof(DateTime?))
|
||||||
{
|
{
|
||||||
if (Database.IsNpgsql())
|
property.SetValueConverter(
|
||||||
{
|
new ValueConverter<DateTime, DateTime>(
|
||||||
property.SetValueConverter(
|
v => v,
|
||||||
new ValueConverter<DateTime, DateTime>(
|
v => new DateTime(v.Ticks, DateTimeKind.Utc)));
|
||||||
v => v,
|
|
||||||
v => v.ToUniversalTime()));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
property.SetValueConverter(
|
|
||||||
new ValueConverter<DateTime, DateTime>(
|
|
||||||
v => v,
|
|
||||||
v => new DateTime(v.Ticks, DateTimeKind.Utc)));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -25,9 +25,6 @@ public class DatabaseContextFactory : IDesignTimeDbContextFactory<DatabaseContex
|
|||||||
var globalSettings = GlobalSettingsFactory.GlobalSettings;
|
var globalSettings = GlobalSettingsFactory.GlobalSettings;
|
||||||
var optionsBuilder = new DbContextOptionsBuilder<DatabaseContext>();
|
var optionsBuilder = new DbContextOptionsBuilder<DatabaseContext>();
|
||||||
var connectionString = globalSettings.PostgreSql?.ConnectionString;
|
var connectionString = globalSettings.PostgreSql?.ConnectionString;
|
||||||
// NpgSql 6.0 changed how timezones works. We have not yet updated our projects to support this new behavior and need to fallback to the previous behavior.
|
|
||||||
// Check https://www.npgsql.org/doc/release-notes/6.0.html#timestamp-rationalization-and-improvements for more details.
|
|
||||||
AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true);
|
|
||||||
if (string.IsNullOrWhiteSpace(connectionString))
|
if (string.IsNullOrWhiteSpace(connectionString))
|
||||||
{
|
{
|
||||||
throw new Exception("No Postgres connection string found.");
|
throw new Exception("No Postgres connection string found.");
|
||||||
|
Loading…
Reference in New Issue
Block a user