Skip to content

Commit 2e89f7c

Browse files
committed
Fix compilation
1 parent 09c8df6 commit 2e89f7c

File tree

25 files changed

+371
-43
lines changed

25 files changed

+371
-43
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ jobs:
8080
with:
8181
dotnet-version: |
8282
8.0.x
83+
9.0.x
8384
8485
- uses: dotnet/nbgv@master
8586
id: nbgv

Directory.Build.props

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
<TreatWarningsAsErrors>True</TreatWarningsAsErrors>
1717
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
1818

19-
<DefineConstants>$(DefineConstants);EF_CORE_8</DefineConstants>
20-
2119
<!-- Don't enforce file header -->
2220
<NoWarn>$(NoWarn);SA1633</NoWarn>
2321

src/Directory.Build.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
<Using Include="Microsoft.EntityFrameworkCore.Metadata" />
3636
<Using Include="Microsoft.EntityFrameworkCore.Storage" />
3737
<Using Include="Microsoft.Extensions.DependencyInjection" />
38+
<Using Include="System.Diagnostics.CodeAnalysis" />
3839
<Using Include="System.Linq.Expressions" />
3940
</ItemGroup>
4041

src/Zomp.EFCore.BinaryFunctions.Npgsql/Query/Internal/NpgsqlBinaryTranslator.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,15 @@ protected override SqlExpression GetBytes(SqlExpression sqlExpression)
5050
}
5151

5252
// Every byte is two characters in hex, thus multiply by 2
53+
#if !EF_CORE_8
54+
var byteSize = new SqlConstantExpression(sizeOfType * 2, null);
55+
var zero = new SqlConstantExpression("0", null);
56+
var hex = new SqlConstantExpression("hex", null);
57+
#else
5358
var byteSize = new SqlConstantExpression(Expression.Constant(sizeOfType * 2), null);
5459
var zero = new SqlConstantExpression(Expression.Constant("0"), null);
5560
var hex = new SqlConstantExpression(Expression.Constant("hex"), null);
61+
#endif
5662
var lPad = sqlExpressionFactory.Function("LPAD", [toHex, byteSize, zero], true, LPadArgumentsPropagateNullability, typeof(string));
5763
var decode = sqlExpressionFactory.Function("decode", [lPad, hex], true, DecodeArgumentsPropagateNullabilityArray, typeof(string), byteArrayTypeMapping);
5864
return new SqlUnaryExpression(ExpressionType.Convert, decode, typeof(byte[]), byteArrayTypeMapping);

src/Zomp.EFCore.BinaryFunctions.SqlServer/Infrastructure/Internal/SqlServerBinaryTranslator.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,16 @@ public class SqlServerBinaryTranslator(ISqlExpressionFactory sqlExpressionFactor
1515

1616
// Constants
1717
private static readonly double TwoToThePowerOfMinus52 = Math.Pow(2d, -52);
18+
19+
#if !EF_CORE_8
20+
private static readonly SqlExpression TwoToThePowerOfMinus52Sql = new SqlConstantExpression(TwoToThePowerOfMinus52, null);
21+
private static readonly SqlExpression OneFloat = new SqlConstantExpression(1d, null);
22+
private static readonly SqlExpression TwoFloat = new SqlConstantExpression(2d, null);
23+
#else
1824
private static readonly SqlExpression TwoToThePowerOfMinus52Sql = new SqlConstantExpression(Expression.Constant(TwoToThePowerOfMinus52), null);
1925
private static readonly SqlExpression OneFloat = new SqlConstantExpression(Expression.Constant(1d), null);
2026
private static readonly SqlExpression TwoFloat = new SqlConstantExpression(Expression.Constant(2d), null);
27+
#endif
2128

2229
// Must be varbinary.
2330
private static readonly SqlExpression X000FFFFFFFFFFFFF = new SqlFragmentExpression("0x000FFFFFFFFFFFFF");
@@ -51,7 +58,11 @@ private SqlBinaryExpression ToDouble(SqlExpression sqlExpression)
5158
{
5259
var colNameBigInt = new SqlUnaryExpression(ExpressionType.Convert, sqlExpression, typeof(long), null);
5360

61+
#if !EF_CORE_8
62+
var sql1023 = new SqlConstantExpression(1023, null);
63+
#else
5464
var sql1023 = new SqlConstantExpression(Expression.Constant(1023), null);
65+
#endif
5566

5667
// Line 1
5768
var l1 = sqlExpressionFactory.Function("SIGN", [colNameBigInt], true, SignArgumentsPropagateNullability, colNameBigInt.Type);

src/Zomp.EFCore.BinaryFunctions.Sqlite/Query/Internal/SqliteBinaryTranslator.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,13 @@ protected override SqlExpression BinaryCast(SqlExpression sqlExpression, Type to
2626
var maxValue = 1L << (sizeInBytes * 8);
2727
var maxValueSigned = 1L << ((sizeInBytes * 8) - 1);
2828

29+
#if !EF_CORE_8
30+
var maxValueSql = new SqlConstantExpression(maxValue, null);
31+
var maxValueSignedSql = new SqlConstantExpression(maxValueSigned, null);
32+
#else
2933
var maxValueSql = new SqlConstantExpression(Expression.Constant(maxValue), null);
3034
var maxValueSignedSql = new SqlConstantExpression(Expression.Constant(maxValueSigned), null);
35+
#endif
3136

3237
// Equivalent of substring on binary data
3338
var modResult = new SqlBinaryExpression(ExpressionType.Modulo, sqlExpression, maxValueSql, fromType, null);

src/Zomp.EFCore.BinaryFunctions/Query/Internal/BinaryTranslator.cs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,10 +83,23 @@ private static SqlBinaryExpression Concat(IReadOnlyList<SqlExpression> arguments
8383

8484
private SqlExpression ToValue(SqlExpression sqlExpression, SqlExpression offset, Type type)
8585
=> ToValue(
86-
Substring(sqlExpression, offset, new SqlConstantExpression(Expression.Constant(Marshal.SizeOf(type)), null)),
86+
Substring(
87+
sqlExpression,
88+
offset,
89+
#if !EF_CORE_8
90+
new SqlConstantExpression(Marshal.SizeOf(type), null)),
91+
#else
92+
new SqlConstantExpression(Expression.Constant(Marshal.SizeOf(type)), null)),
93+
#endif
8794
type);
8895

89-
private SqlFunctionExpression Substring(SqlExpression bytearray, SqlExpression start, SqlExpression length) => sqlExpressionFactory.Function(
96+
private
97+
#if !EF_CORE_8
98+
SqlExpression
99+
#else
100+
SqlFunctionExpression
101+
#endif
102+
Substring(SqlExpression bytearray, SqlExpression start, SqlExpression length) => sqlExpressionFactory.Function(
90103
"SUBSTRING",
91104
[
92105
bytearray,

src/Zomp.EFCore.WindowFunctions.Npgsql/Query/Internal/WindowFunctionsNpgsqlParameterBasedSqlProcessor.cs

Lines changed: 34 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,41 @@
66
/// <remarks>
77
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlParameterBasedSqlProcessor"/> class.
88
/// </remarks>
9-
/// <param name="dependencies">Service dependencies.</param>
10-
/// <param name="useRelationalNulls">A bool value indicating if relational nulls should be used.</param>
11-
public class WindowFunctionsNpgsqlParameterBasedSqlProcessor(RelationalParameterBasedSqlProcessorDependencies dependencies, bool useRelationalNulls)
12-
: NpgsqlParameterBasedSqlProcessor(dependencies, useRelationalNulls)
9+
public class WindowFunctionsNpgsqlParameterBasedSqlProcessor : NpgsqlParameterBasedSqlProcessor
1310
{
11+
#if !EF_CORE_8
12+
/// <summary>
13+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlParameterBasedSqlProcessor"/> class.
14+
/// </summary>
15+
/// <param name="dependencies">Service dependencies.</param>
16+
/// <param name="parameters">Processor parameters.</param>
17+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
18+
public WindowFunctionsNpgsqlParameterBasedSqlProcessor(RelationalParameterBasedSqlProcessorDependencies dependencies, RelationalParameterBasedSqlProcessorParameters parameters)
19+
: base(dependencies, parameters)
20+
{
21+
}
22+
#else
23+
/// <summary>
24+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlParameterBasedSqlProcessor"/> class.
25+
/// </summary>
26+
/// <param name="dependencies">Service dependencies.</param>
27+
/// <param name="useRelationalNulls">A bool value indicating if relational nulls should be used.</param>
28+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
29+
public WindowFunctionsNpgsqlParameterBasedSqlProcessor(RelationalParameterBasedSqlProcessorDependencies dependencies, bool useRelationalNulls)
30+
: base(dependencies, useRelationalNulls)
31+
{
32+
}
33+
#endif
34+
35+
#if !EF_CORE_8
36+
/// <inheritdoc/>
37+
protected override Expression ProcessSqlNullability(Expression selectExpression, IReadOnlyDictionary<string, object?> parametersValues, out bool canCache)
38+
=> new WindowFunctionsNpgsqlSqlNullabilityProcessor(Dependencies, Parameters)
39+
.Process(selectExpression, parametersValues, out canCache);
40+
#else
1441
/// <inheritdoc/>
1542
protected override Expression ProcessSqlNullability(Expression selectExpression, IReadOnlyDictionary<string, object?> parametersValues, out bool canCache)
1643
=> new WindowFunctionsNpgsqlSqlNullabilityProcessor(Dependencies, UseRelationalNulls).Process(selectExpression, parametersValues, out canCache);
17-
////protected override Expression ProcessSqlNullability(Expression queryExpression, IReadOnlyDictionary<string, object?> parametersValues, out bool canCache)
18-
//// => new WindowFunctionsNpgsqlSqlNullabilityProcessor(Dependencies, UseRelationalNulls).Process(queryExpression, parametersValues, out canCache);
19-
}
44+
#endif
45+
46+
}

src/Zomp.EFCore.WindowFunctions.Npgsql/Query/Internal/WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory.cs

Lines changed: 36 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,45 @@
66
/// <remarks>
77
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory"/> class.
88
/// </remarks>
9-
/// <param name="dependencies">Relational Parameter Based Sql ProcessorDependencies.</param>
10-
public class WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory(RelationalParameterBasedSqlProcessorDependencies dependencies)
11-
: NpgsqlParameterBasedSqlProcessorFactory(dependencies)
9+
public class WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory : NpgsqlParameterBasedSqlProcessorFactory
1210
{
13-
private readonly RelationalParameterBasedSqlProcessorDependencies dependencies = dependencies;
11+
private readonly RelationalParameterBasedSqlProcessorDependencies dependencies;
1412

13+
#if !EF_CORE_8
14+
/// <summary>
15+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory"/> class.
16+
/// </summary>
17+
/// <param name="dependencies">Relational Parameter Based Sql ProcessorDependencies.</param>
18+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
19+
public WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory(RelationalParameterBasedSqlProcessorDependencies dependencies)
20+
: base(dependencies)
21+
{
22+
this.dependencies = dependencies;
23+
}
24+
#else
25+
/// <summary>
26+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory"/> class.
27+
/// </summary>
28+
/// <param name="dependencies">Relational Parameter Based Sql ProcessorDependencies.</param>
29+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
30+
public WindowFunctionsNpgsqlParameterBasedSqlProcessorFactory(RelationalParameterBasedSqlProcessorDependencies dependencies)
31+
: base(dependencies)
32+
{
33+
this.dependencies = dependencies;
34+
}
35+
#endif
36+
37+
#if !EF_CORE_8
38+
/// <summary>
39+
/// This will be removed.
40+
/// </summary>
41+
/// <param name="parameters">Processor parameters.</param>
42+
/// <returns>This will be removed soon.</returns>
43+
public new RelationalParameterBasedSqlProcessor Create(RelationalParameterBasedSqlProcessorParameters parameters)
44+
=> new WindowFunctionsNpgsqlParameterBasedSqlProcessor(dependencies, parameters);
45+
#else
1546
/// <inheritdoc/>
1647
public override RelationalParameterBasedSqlProcessor Create(bool useRelationalNulls)
1748
=> new WindowFunctionsNpgsqlParameterBasedSqlProcessor(dependencies, useRelationalNulls);
49+
#endif
1850
}

src/Zomp.EFCore.WindowFunctions.Npgsql/Query/Internal/WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor.cs

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,39 @@
33
/// <summary>
44
/// The WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor.
55
/// </summary>
6-
/// <param name="dependencies">Type mapping source dependencies.</param>
7-
/// <param name="relationalDependencies">Relational type mapping source dependencies.</param>
8-
/// <param name="queryCompilationContext">The query compilation context object to use.</param>
9-
public class WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor(QueryableMethodTranslatingExpressionVisitorDependencies dependencies, RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies, QueryCompilationContext queryCompilationContext) : NpgsqlQueryableMethodTranslatingExpressionVisitor(dependencies, relationalDependencies, queryCompilationContext)
6+
public class WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor : NpgsqlQueryableMethodTranslatingExpressionVisitor
107
{
8+
#if !EF_CORE_8
9+
/// <summary>
10+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor"/> class.
11+
/// </summary>
12+
/// <param name="dependencies">Type mapping source dependencies.</param>
13+
/// <param name="relationalDependencies">Relational type mapping source dependencies.</param>
14+
/// <param name="queryCompilationContext">The query compilation context object to use.</param>
15+
/// <param name="npgsqlSingletonOptions">NpgSql Singleton Options.</param>
16+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
17+
public WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor(
18+
QueryableMethodTranslatingExpressionVisitorDependencies dependencies,
19+
RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies,
20+
RelationalQueryCompilationContext queryCompilationContext,
21+
INpgsqlSingletonOptions npgsqlSingletonOptions)
22+
: base(dependencies, relationalDependencies, queryCompilationContext, npgsqlSingletonOptions)
23+
{
24+
}
25+
#else
26+
/// <summary>
27+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor"/> class.
28+
/// </summary>
29+
/// <param name="dependencies">Type mapping source dependencies.</param>
30+
/// <param name="relationalDependencies">Relational type mapping source dependencies.</param>
31+
/// <param name="queryCompilationContext">The query compilation context object to use.</param>
32+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
33+
public WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor(QueryableMethodTranslatingExpressionVisitorDependencies dependencies, RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies, QueryCompilationContext queryCompilationContext)
34+
: base(dependencies, relationalDependencies, queryCompilationContext)
35+
{
36+
}
37+
#endif
38+
1139
/// <inheritdoc/>
1240
protected override Expression VisitMethodCall(MethodCallExpression methodCallExpression) => SubQueryProcessor.ProcessSubQuery(this, methodCallExpression)
1341
?? base.VisitMethodCall(methodCallExpression);

src/Zomp.EFCore.WindowFunctions.Npgsql/Query/Internal/WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory.cs

Lines changed: 45 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,54 @@
33
/// <summary>
44
/// The WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory.
55
/// </summary>
6-
/// <param name="dependencies">Type mapping source dependencies.</param>
7-
/// <param name="relationalDependencies">Relational type mapping source dependencies.</param>
8-
public class WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory(QueryableMethodTranslatingExpressionVisitorDependencies dependencies, RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies)
9-
: NpgsqlQueryableMethodTranslatingExpressionVisitorFactory(dependencies, relationalDependencies)
6+
public class WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory : NpgsqlQueryableMethodTranslatingExpressionVisitorFactory
107
{
11-
private readonly QueryableMethodTranslatingExpressionVisitorDependencies dependencies = dependencies;
12-
private readonly RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies = relationalDependencies;
8+
private readonly QueryableMethodTranslatingExpressionVisitorDependencies dependencies;
9+
private readonly RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies;
10+
#if !EF_CORE_8
11+
private readonly INpgsqlSingletonOptions npgsqlSingletonOptions;
12+
#endif
1313

14+
#if !EF_CORE_8
15+
/// <summary>
16+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory"/> class.
17+
/// </summary>
18+
/// <param name="dependencies">Type mapping source dependencies.</param>
19+
/// <param name="relationalDependencies">Relational type mapping source dependencies.</param>
20+
/// <param name="npgsqlSingletonOptions">NpgSql Singleton Options.</param>
21+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
22+
public WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory(
23+
QueryableMethodTranslatingExpressionVisitorDependencies dependencies,
24+
RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies,
25+
INpgsqlSingletonOptions npgsqlSingletonOptions)
26+
: base(dependencies, relationalDependencies, npgsqlSingletonOptions)
27+
{
28+
this.dependencies = dependencies;
29+
this.relationalDependencies = relationalDependencies;
30+
this.npgsqlSingletonOptions = npgsqlSingletonOptions;
31+
}
32+
#else
33+
/// <summary>
34+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory"/> class.
35+
/// </summary>
36+
/// <param name="dependencies">Type mapping source dependencies.</param>
37+
/// <param name="relationalDependencies">Relational type mapping source dependencies.</param>
38+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
39+
public WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitorFactory(QueryableMethodTranslatingExpressionVisitorDependencies dependencies, RelationalQueryableMethodTranslatingExpressionVisitorDependencies relationalDependencies)
40+
: base(dependencies, relationalDependencies)
41+
{
42+
this.dependencies = dependencies;
43+
this.relationalDependencies = relationalDependencies;
44+
}
45+
#endif
46+
47+
#if !EF_CORE_8
48+
/// <inheritdoc/>
49+
public override QueryableMethodTranslatingExpressionVisitor Create(QueryCompilationContext queryCompilationContext)
50+
=> new WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor(dependencies, relationalDependencies, (RelationalQueryCompilationContext)queryCompilationContext, npgsqlSingletonOptions);
51+
#else
1452
/// <inheritdoc/>
1553
public override QueryableMethodTranslatingExpressionVisitor Create(QueryCompilationContext queryCompilationContext)
1654
=> new WindowFunctionsNpgsqlQueryableMethodTranslatingExpressionVisitor(dependencies, relationalDependencies, queryCompilationContext);
55+
#endif
1756
}

src/Zomp.EFCore.WindowFunctions.Npgsql/Query/Internal/WindowFunctionsNpgsqlSqlNullabilityProcessor.cs

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,32 @@
66
/// <remarks>
77
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlSqlNullabilityProcessor"/> class.
88
/// </remarks>
9-
/// <param name="dependencies">Relational Parameter Based Sql Processor Dependencies.</param>
10-
/// <param name="useRelationalNulls">A bool value indicating if relational nulls should be used.</param>
11-
public class WindowFunctionsNpgsqlSqlNullabilityProcessor(RelationalParameterBasedSqlProcessorDependencies dependencies, bool useRelationalNulls)
12-
: NpgsqlSqlNullabilityProcessor(dependencies, useRelationalNulls)
9+
public class WindowFunctionsNpgsqlSqlNullabilityProcessor : NpgsqlSqlNullabilityProcessor
1310
{
11+
#if !EF_CORE_8
12+
/// <summary>
13+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlSqlNullabilityProcessor"/> class.
14+
/// </summary>
15+
/// <param name="dependencies">Relational Parameter Based Sql Processor Dependencies.</param>
16+
/// <param name="parameters">Processor parameters.</param>
17+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
18+
public WindowFunctionsNpgsqlSqlNullabilityProcessor(RelationalParameterBasedSqlProcessorDependencies dependencies, RelationalParameterBasedSqlProcessorParameters parameters)
19+
: base(dependencies, parameters)
20+
{
21+
}
22+
#else
23+
/// <summary>
24+
/// Initializes a new instance of the <see cref="WindowFunctionsNpgsqlSqlNullabilityProcessor"/> class.
25+
/// </summary>
26+
/// <param name="dependencies">Relational Parameter Based Sql Processor Dependencies.</param>
27+
/// <param name="useRelationalNulls">A bool value indicating if relational nulls should be used.</param>
28+
[SuppressMessage("Style", "IDE0290:Use primary constructor", Justification = "EF Core 8")]
29+
public WindowFunctionsNpgsqlSqlNullabilityProcessor(RelationalParameterBasedSqlProcessorDependencies dependencies, bool useRelationalNulls)
30+
: base(dependencies, useRelationalNulls)
31+
{
32+
}
33+
#endif
34+
1435
/// <inheritdoc/>
1536
protected override SqlExpression VisitCustomSqlExpression(SqlExpression sqlExpression, bool allowOptimizedExpansion, out bool nullable)
1637
{

0 commit comments

Comments
 (0)