diff --git a/src/Core/Repositories/SqlServer/BaseRepository.cs b/src/Core/Repositories/SqlServer/BaseRepository.cs index fd25e41812..e02885c442 100644 --- a/src/Core/Repositories/SqlServer/BaseRepository.cs +++ b/src/Core/Repositories/SqlServer/BaseRepository.cs @@ -1,9 +1,15 @@ using System; +using Dapper; namespace Bit.Core.Repositories.SqlServer { public abstract class BaseRepository { + static BaseRepository() + { + SqlMapper.AddTypeHandler(new DateTimeHandler()); + } + public BaseRepository(string connectionString) { if(string.IsNullOrWhiteSpace(connectionString)) diff --git a/src/Core/Repositories/SqlServer/DateTimeHandler.cs b/src/Core/Repositories/SqlServer/DateTimeHandler.cs new file mode 100644 index 0000000000..36eabca61a --- /dev/null +++ b/src/Core/Repositories/SqlServer/DateTimeHandler.cs @@ -0,0 +1,16 @@ +using System; +using System.Data; +using Dapper; + +public class DateTimeHandler : SqlMapper.TypeHandler +{ + public override void SetValue(IDbDataParameter parameter, DateTime value) + { + parameter.Value = value; + } + + public override DateTime Parse(object value) + { + return DateTime.SpecifyKind((DateTime)value, DateTimeKind.Utc); + } +}