区切り文字列としてデータベースに保持したい配列プロパティを持つオブジェクトがあります。そのプロパティをデータベースのフィールドにマップする方法と、その逆を行うにはどうすればよいですか?
public class User() {
public int Id { get; set; }
public string[] Roles { get; set; }
}
不完全な構成クラス:
public class UserConfig : EntityTypeConfiguration<User> {
public UserConfig() {
this.Property(u => u.Roles).__???__
this.Map(u => u.Properties<string[]>(r => r.Roles).__???__))
.HasColumnName("roles");
}
}
この例では、「Roles」プロパティはデータベースに移動するときに「roleA、roleB、roleC」に変換され、データベースから読み取られるときに配列に変換されます。どこかにデータマッピングイベントがありますか?