@@ -74,7 +74,9 @@ private static void ConfigureCharacter(ModelBuilder modelBuilder)
7474 entity . HasKey ( e => e . Id ) ;
7575 entity . Property ( e => e . Name ) . HasMaxLength ( 50 ) . IsRequired ( ) ;
7676 entity . Property ( e => e . Gender )
77- . HasConversion < string > ( )
77+ . HasConversion (
78+ v => v . ToString ( ) . ToLowerInvariant ( ) ,
79+ v => Enum . Parse < Gender > ( v , true ) )
7880 . HasMaxLength ( 20 )
7981 . IsRequired ( ) ;
8082 entity . Property ( e => e . SkinColor ) . HasMaxLength ( 7 ) . IsRequired ( ) ;
@@ -102,7 +104,9 @@ private static void ConfigureArticle(ModelBuilder modelBuilder)
102104 entity . HasKey ( e => e . Id ) ;
103105 entity . Property ( e => e . Name ) . HasMaxLength ( 100 ) . IsRequired ( ) ;
104106 entity . Property ( e => e . Type )
105- . HasConversion < string > ( )
107+ . HasConversion (
108+ v => v . ToString ( ) . ToLowerInvariant ( ) ,
109+ v => Enum . Parse < ArticleType > ( v , true ) )
106110 . HasMaxLength ( 20 )
107111 . IsRequired ( ) ;
108112 entity . Property ( e => e . IsActive ) . HasDefaultValue ( true ) ;
@@ -138,7 +142,9 @@ private static void ConfigureComment(ModelBuilder modelBuilder)
138142 entity . Property ( e => e . Rating ) . IsRequired ( ) ;
139143 entity . Property ( e => e . Text ) . IsRequired ( ) ;
140144 entity . Property ( e => e . Status )
141- . HasConversion < string > ( )
145+ . HasConversion (
146+ v => v . ToString ( ) . ToLowerInvariant ( ) ,
147+ v => Enum . Parse < CommentStatus > ( v , true ) )
142148 . HasMaxLength ( 20 )
143149 . HasDefaultValue ( CommentStatus . Pending ) ;
144150 entity . Property ( e => e . CommentedAt ) . HasDefaultValueSql ( "CURRENT_TIMESTAMP" ) ;
0 commit comments