@@ -14,6 +14,30 @@ public class NpgsqlNetTopologySuiteOptionsExtension : IDbContextOptionsExtension
14
14
{
15
15
private DbContextOptionsExtensionInfo ? _info ;
16
16
17
+ /// <summary>
18
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
19
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
20
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
21
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
22
+ /// </summary>
23
+ public virtual CoordinateSequenceFactory ? CoordinateSequenceFactory { get ; private set ; }
24
+
25
+ /// <summary>
26
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
27
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
28
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
29
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
30
+ /// </summary>
31
+ public virtual PrecisionModel ? PrecisionModel { get ; private set ; }
32
+
33
+ /// <summary>
34
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
35
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
36
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
37
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
38
+ /// </summary>
39
+ public virtual Ordinates HandleOrdinates { get ; private set ; }
40
+
17
41
/// <summary>
18
42
/// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
19
43
/// the same compatibility standards as public APIs. It may be changed or removed without notice in
@@ -68,6 +92,52 @@ public virtual void ApplyServices(IServiceCollection services)
68
92
public virtual DbContextOptionsExtensionInfo Info
69
93
=> _info ??= new ExtensionInfo ( this ) ;
70
94
95
+ /// <summary>
96
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
97
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
98
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
99
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
100
+ /// </summary>
101
+ public virtual NpgsqlNetTopologySuiteOptionsExtension WithCoordinateSequenceFactory (
102
+ CoordinateSequenceFactory ? coordinateSequenceFactory )
103
+ {
104
+ var clone = Clone ( ) ;
105
+
106
+ clone . CoordinateSequenceFactory = coordinateSequenceFactory ;
107
+
108
+ return clone ;
109
+ }
110
+
111
+ /// <summary>
112
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
113
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
114
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
115
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
116
+ /// </summary>
117
+ public virtual NpgsqlNetTopologySuiteOptionsExtension WithPrecisionModel ( PrecisionModel ? precisionModel )
118
+ {
119
+ var clone = Clone ( ) ;
120
+
121
+ clone . PrecisionModel = precisionModel ;
122
+
123
+ return clone ;
124
+ }
125
+
126
+ /// <summary>
127
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
128
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
129
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
130
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
131
+ /// </summary>
132
+ public virtual NpgsqlNetTopologySuiteOptionsExtension WithHandleOrdinates ( Ordinates handleOrdinates )
133
+ {
134
+ var clone = Clone ( ) ;
135
+
136
+ clone . HandleOrdinates = handleOrdinates ;
137
+
138
+ return clone ;
139
+ }
140
+
71
141
/// <summary>
72
142
/// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
73
143
/// the same compatibility standards as public APIs. It may be changed or removed without notice in
@@ -123,7 +193,11 @@ public override int GetServiceProviderHashCode()
123
193
=> Extension . IsGeographyDefault . GetHashCode ( ) ;
124
194
125
195
public override bool ShouldUseSameServiceProvider ( DbContextOptionsExtensionInfo other )
126
- => true ;
196
+ => other is ExtensionInfo otherInfo
197
+ && ReferenceEquals ( Extension . CoordinateSequenceFactory , otherInfo . Extension . CoordinateSequenceFactory )
198
+ && ReferenceEquals ( Extension . PrecisionModel , otherInfo . Extension . PrecisionModel )
199
+ && Extension . HandleOrdinates == otherInfo . Extension . HandleOrdinates
200
+ && Extension . IsGeographyDefault == otherInfo . Extension . IsGeographyDefault ;
127
201
128
202
public override void PopulateDebugInfo ( IDictionary < string , string > debugInfo )
129
203
{
0 commit comments