diff --git a/Extensions/TestCommon/TestCommon.csproj b/Extensions/TestCommon/TestCommon.csproj index f19fa46dd6..e23f0c4aef 100644 --- a/Extensions/TestCommon/TestCommon.csproj +++ b/Extensions/TestCommon/TestCommon.csproj @@ -12,7 +12,7 @@ - + diff --git a/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj b/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj index ab1e779974..34ee5d125c 100644 --- a/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj +++ b/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj @@ -16,7 +16,7 @@ - + diff --git a/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj b/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj index 686f6bf4ac..8643bbdc08 100644 --- a/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj +++ b/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj @@ -17,7 +17,7 @@ - + diff --git a/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj b/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj index b69fff4349..3c18a0e846 100644 --- a/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj +++ b/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj @@ -16,7 +16,7 @@ - + diff --git a/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj b/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj index d4d5c4299e..a919cdb476 100644 --- a/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj +++ b/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj @@ -19,7 +19,7 @@ - + diff --git a/Orm/Xtensive.Orm.SqlServer/Sql.Drivers.SqlServer/v09/TypeMapper.cs b/Orm/Xtensive.Orm.SqlServer/Sql.Drivers.SqlServer/v09/TypeMapper.cs index b998c4dbe2..7163974dcf 100644 --- a/Orm/Xtensive.Orm.SqlServer/Sql.Drivers.SqlServer/v09/TypeMapper.cs +++ b/Orm/Xtensive.Orm.SqlServer/Sql.Drivers.SqlServer/v09/TypeMapper.cs @@ -80,6 +80,26 @@ public override void BindString(DbParameter parameter, object value) : NVarCharMaxLength; } +#if NET6_0_OR_GREATER + public override void BindDateOnly(DbParameter parameter, object value) + { + parameter.DbType = DbType.Date; + parameter.Value = value != null ? (DateOnly) value : DBNull.Value; + } + + public override void BindTimeOnly(DbParameter parameter, object value) + { + parameter.DbType = DbType.Time; + parameter.Value = value != null ? (TimeOnly) value : DBNull.Value; + } + + public override object ReadDateOnly(DbDataReader reader, int index) => + reader.GetFieldValue(index); + + public override object ReadTimeOnly(DbDataReader reader, int index) => + reader.GetFieldValue(index); +#endif + public override SqlValueType MapSByte(int? length, int? precision, int? scale) { return new SqlValueType(SqlType.Int16); diff --git a/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj b/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj index 1717bd3525..c9b18b906f 100644 --- a/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj +++ b/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj @@ -16,7 +16,7 @@ 2 - + diff --git a/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj b/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj index 2631363597..ed55956c3b 100644 --- a/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj +++ b/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj @@ -16,7 +16,7 @@ - + diff --git a/Orm/Xtensive.Orm/Sql/ValueTypeMapping/TypeMapper.cs b/Orm/Xtensive.Orm/Sql/ValueTypeMapping/TypeMapper.cs index 51719dd012..f95ea9b57c 100644 --- a/Orm/Xtensive.Orm/Sql/ValueTypeMapping/TypeMapper.cs +++ b/Orm/Xtensive.Orm/Sql/ValueTypeMapping/TypeMapper.cs @@ -46,12 +46,12 @@ public virtual void BindBoolean(DbParameter parameter, object value) public virtual void BindChar(DbParameter parameter, object value) { parameter.DbType = DbType.String; - if (value==null) { + if (value == null) { parameter.Value = DBNull.Value; return; } var _char = (char) value; - parameter.Value = _char==default(char) ? string.Empty : _char.ToString(); + parameter.Value = _char == default(char) ? string.Empty : _char.ToString(); } public virtual void BindString(DbParameter parameter, object value) @@ -155,7 +155,7 @@ public virtual void BindDateTimeOffset(DbParameter parameter, object value) public virtual void BindTimeSpan(DbParameter parameter, object value) { parameter.DbType = DbType.Int64; - if (value!=null) { + if (value != null) { var timeSpan = ValueRangeValidator.Correct((TimeSpan) value, Int64TimeSpanRange); parameter.Value = timeSpan.Ticks * 100; } @@ -226,7 +226,7 @@ public virtual object ReadDateTime(DbDataReader reader, int index) => #if NET6_0_OR_GREATER public virtual object ReadDateOnly(DbDataReader reader, int index) => - DateOnly.FromDateTime(reader.GetFieldValue(index)); + DateOnly.FromDateTime(reader.GetFieldValue(index)); public virtual object ReadTimeOnly(DbDataReader reader, int index) => TimeOnly.FromTimeSpan(reader.GetFieldValue(index)); @@ -311,9 +311,9 @@ public virtual SqlValueType MapDouble(int? length, int? precision, int? scale) = public virtual SqlValueType MapDecimal(int? length, int? precision, int? scale) { - if (MaxDecimalPrecision==null) + if (MaxDecimalPrecision == null) return new SqlValueType(SqlType.Decimal); - if (precision==null) { + if (precision == null) { var resultPrecision = Math.Min(DecimalPrecisionLimit, MaxDecimalPrecision.Value); var resultScale = resultPrecision / 2; return new SqlValueType(SqlType.Decimal, resultPrecision, resultScale); @@ -352,9 +352,9 @@ public virtual SqlValueType MapByteArray(int? length, int? precision, int? scale protected static SqlValueType ChooseStreamType(SqlType varType, SqlType varMaxType, int? length, int? varTypeMaxLength) { - if (varTypeMaxLength==null) + if (varTypeMaxLength == null) return new SqlValueType(varMaxType); - if (length==null) + if (length == null) return new SqlValueType(varType, varTypeMaxLength.Value); if (length.Value > varTypeMaxLength.Value) return new SqlValueType(varMaxType); @@ -367,13 +367,13 @@ protected static SqlValueType ChooseStreamType(SqlType varType, SqlType varMaxTy public virtual void Initialize() { var varchar = Driver.ServerInfo.DataTypes.VarChar; - if (varchar!=null) + if (varchar != null) VarCharMaxLength = varchar.MaxLength; var varbinary = Driver.ServerInfo.DataTypes.VarBinary; - if (varbinary!=null) + if (varbinary != null) VarBinaryMaxLength = varbinary.MaxLength; var _decimal = Driver.ServerInfo.DataTypes.Decimal; - if (_decimal!=null) + if (_decimal != null) MaxDecimalPrecision = _decimal.MaxPrecision; } diff --git a/Orm/Xtensive.Orm/Xtensive.Orm.csproj b/Orm/Xtensive.Orm/Xtensive.Orm.csproj index dae58d992d..1260d3c65b 100644 --- a/Orm/Xtensive.Orm/Xtensive.Orm.csproj +++ b/Orm/Xtensive.Orm/Xtensive.Orm.csproj @@ -50,7 +50,7 @@ - +