@@ -23,6 +23,7 @@ public class JetOptionsExtension : RelationalOptionsExtension
23
23
// private bool? _rowNumberPaging;
24
24
private DbProviderFactory _dataAccessProviderFactory ;
25
25
private bool _useOuterSelectSkipEmulationViaDataReader ;
26
+ private bool _enableMillisecondsSupport ;
26
27
27
28
/// <summary>
28
29
/// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
@@ -48,6 +49,7 @@ protected JetOptionsExtension([NotNull] JetOptionsExtension copyFrom)
48
49
// _rowNumberPaging = copyFrom._rowNumberPaging;
49
50
_dataAccessProviderFactory = copyFrom . _dataAccessProviderFactory ;
50
51
_useOuterSelectSkipEmulationViaDataReader = copyFrom . _useOuterSelectSkipEmulationViaDataReader ;
52
+ _enableMillisecondsSupport = copyFrom . _enableMillisecondsSupport ;
51
53
}
52
54
53
55
/// <summary>
@@ -139,6 +141,29 @@ public virtual JetOptionsExtension WithUseOuterSelectSkipEmulationViaDataReader(
139
141
return clone ;
140
142
}
141
143
144
+ /// <summary>
145
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
146
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
147
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
148
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
149
+ /// </summary>
150
+ public virtual bool EnableMillisecondsSupport => _enableMillisecondsSupport ;
151
+
152
+ /// <summary>
153
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
154
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
155
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
156
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
157
+ /// </summary>
158
+ public virtual JetOptionsExtension WithEnableMillisecondsSupport ( bool enabled )
159
+ {
160
+ var clone = ( JetOptionsExtension ) Clone ( ) ;
161
+
162
+ clone . _enableMillisecondsSupport = enabled ;
163
+
164
+ return clone ;
165
+ }
166
+
142
167
/// <summary>
143
168
/// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
144
169
/// the same compatibility standards as public APIs. It may be changed or removed without notice in
@@ -190,6 +215,11 @@ public override string LogFragment
190
215
builder . Append ( "UseOuterSelectSkipEmulationViaDataReader " ) ;
191
216
}
192
217
218
+ if ( Extension . _enableMillisecondsSupport )
219
+ {
220
+ builder . Append ( "EnableMillisecondsSupport " ) ;
221
+ }
222
+
193
223
_logFragment = builder . ToString ( ) ;
194
224
}
195
225
@@ -203,7 +233,8 @@ public override long GetServiceProviderHashCode()
203
233
{
204
234
_serviceProviderHash = ( base . GetServiceProviderHashCode ( ) * 397 ) ^
205
235
( Extension . _dataAccessProviderFactory ? . GetHashCode ( ) ?? 0L ) ^
206
- ( Extension . _useOuterSelectSkipEmulationViaDataReader . GetHashCode ( ) * 397 ) /* ^
236
+ ( Extension . _useOuterSelectSkipEmulationViaDataReader . GetHashCode ( ) * 397 ) ^
237
+ ( Extension . _enableMillisecondsSupport . GetHashCode ( ) * 397 ) /* ^
207
238
(Extension._rowNumberPaging?.GetHashCode() ?? 0L)*/ ;
208
239
}
209
240
@@ -222,6 +253,8 @@ public override void PopulateDebugInfo(IDictionary<string, string> debugInfo)
222
253
debugInfo [ "Jet:" + nameof ( JetDbContextOptionsBuilder . UseOuterSelectSkipEmulationViaDataReader ) ]
223
254
#pragma warning restore 618
224
255
= Extension . _useOuterSelectSkipEmulationViaDataReader . GetHashCode ( ) . ToString ( CultureInfo . InvariantCulture ) ;
256
+ debugInfo [ "Jet:" + nameof ( JetDbContextOptionsBuilder . EnableMillisecondsSupport ) ]
257
+ = Extension . _enableMillisecondsSupport . GetHashCode ( ) . ToString ( CultureInfo . InvariantCulture ) ;
225
258
}
226
259
}
227
260
}
0 commit comments