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.
		
		
		
		
		
			
		
			
				
					
					
						
							14 lines
						
					
					
						
							527 B
						
					
					
				
			
		
		
	
	
							14 lines
						
					
					
						
							527 B
						
					
					
				using Microsoft.EntityFrameworkCore.Storage.ValueConversion; | 
						|
using Newtonsoft.Json; | 
						|
 | 
						|
namespace ErsatzTV.Infrastructure.Data.Configurations; | 
						|
 | 
						|
public class EnumCollectionJsonValueConverter<T> : ValueConverter<ICollection<T>, string> where T : Enum | 
						|
{ | 
						|
    public EnumCollectionJsonValueConverter() : base( | 
						|
        v => JsonConvert.SerializeObject(v.Select(e => e.ToString()).ToList()), | 
						|
        v => JsonConvert.DeserializeObject<ICollection<string>>(v) | 
						|
            .Select(e => (T)Enum.Parse(typeof(T), e)).ToList()) | 
						|
    { | 
						|
    } | 
						|
}
 | 
						|
 |