Skip to content

Commit 4f72526

Browse files
committed
[add] PostgreSQL 8.3 dialect which uses timestamptz DateTime format
1 parent ae0bd2e commit 4f72526

File tree

5 files changed

+32
-2
lines changed

5 files changed

+32
-2
lines changed

src/Simplify.FluentNHibernate/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## [3.2.0] - 2024-04-26
4+
5+
### Added
6+
7+
- PostgreSQL 8.3 dialect which uses timestamptz DateTime format
8+
39
## [3.1.0] - 2024-03-24
410

511
### Added

src/Simplify.FluentNHibernate/ConfigurationExtensions.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using Microsoft.Extensions.Configuration;
66
using NHibernate.Dialect;
77
using NHibernate.Driver;
8+
using Pas.Database.Session.Dialects;
89
using Simplify.FluentNHibernate.Dialects;
910
using Simplify.FluentNHibernate.Drivers;
1011
using Simplify.FluentNHibernate.Interceptors;
@@ -613,6 +614,7 @@ private static void InitializeFromConfigPostgreSql(FluentConfiguration fluentCon
613614
PostgreSqlDialect.PostgreSQL81 => PostgreSQLConfiguration.PostgreSQL81,
614615
PostgreSqlDialect.PostgreSQL82 => PostgreSQLConfiguration.PostgreSQL82,
615616
PostgreSqlDialect.PostgreSQL83 => PostgreSQLConfiguration.PostgreSQL83,
617+
PostgreSqlDialect.PostgreSQL83Z => PostgreSQLConfiguration.PostgreSQL83,
616618
_ => throw new InvalidOperationException()
617619
};
618620

@@ -623,6 +625,9 @@ private static void InitializeFromConfigPostgreSql(FluentConfiguration fluentCon
623625
.Username(settings.UserName)
624626
.Password(settings.UserPassword));
625627

628+
if (dialect == PostgreSqlDialect.PostgreSQL83Z)
629+
clientConfiguration.Dialect<PostgreSql83ZDialect>();
630+
626631
additionalClientConfiguration?.Invoke(clientConfiguration);
627632

628633
fluentConfiguration.Database(clientConfiguration);
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
using System.Data;
2+
using NHibernate.Dialect;
3+
4+
namespace Pas.Database.Session.Dialects;
5+
6+
/// <summary>
7+
/// Provides PostgreSQL dialect which uses timestamptz DateTime format
8+
/// </summary>
9+
public class PostgreSql83ZDialect : PostgreSQL83Dialect
10+
{
11+
/// <summary>
12+
/// Initialize PostgreSql83WithUtcDialect
13+
/// </summary>
14+
public PostgreSql83ZDialect() => RegisterColumnType(DbType.DateTime, "timestamptz");
15+
}

src/Simplify.FluentNHibernate/Dialects/PostgreSqlDialect.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,9 @@ public enum PostgreSqlDialect
2020
/// <summary>
2121
/// The PostgreSQL 8.3 dialect
2222
/// </summary>
23-
PostgreSQL83
23+
PostgreSQL83,
24+
/// <summary>
25+
/// The PostgreSQL 8.3 dialect using timestamptz DateTime format
26+
/// </summary>
27+
PostgreSQL83Z
2428
}

src/Simplify.FluentNHibernate/Simplify.FluentNHibernate.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
99
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1010

11-
<Version>3.1</Version>
11+
<Version>3.2</Version>
1212

1313
<Authors>Alexander Krylkov</Authors>
1414
<Product>Simplify</Product>

0 commit comments

Comments
 (0)