mirror of https://github.com/ErsatzTV/ErsatzTV.git
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							29 lines
						
					
					
						
							789 B
						
					
					
				
			
		
		
	
	
							29 lines
						
					
					
						
							789 B
						
					
					
				using System.Data; | 
						|
using Dapper; | 
						|
 | 
						|
namespace ErsatzTV.Infrastructure.Data; | 
						|
 | 
						|
public abstract class SqliteTypeHandler<T> : SqlMapper.TypeHandler<T> | 
						|
{ | 
						|
    // Parameters are converted by Microsoft.Data.Sqlite | 
						|
    public override void SetValue(IDbDataParameter parameter, T value) | 
						|
        => parameter.Value = value; | 
						|
} | 
						|
 | 
						|
public class DateTimeOffsetHandler : SqliteTypeHandler<DateTimeOffset> | 
						|
{ | 
						|
    public override DateTimeOffset Parse(object value) | 
						|
        => DateTimeOffset.Parse((string)value); | 
						|
} | 
						|
 | 
						|
public class GuidHandler : SqliteTypeHandler<Guid> | 
						|
{ | 
						|
    public override Guid Parse(object value) | 
						|
        => Guid.Parse((string)value); | 
						|
} | 
						|
 | 
						|
public class TimeSpanHandler : SqliteTypeHandler<TimeSpan> | 
						|
{ | 
						|
    public override TimeSpan Parse(object value) | 
						|
        => TimeSpan.Parse((string)value); | 
						|
}
 | 
						|
 |