Given this kind of code:
public class Topic
{
public enum Category
{
Language,
Science
}
public Category Name { get; set; }
public string Description { get; set; } = null!;
}
public class MyEntity
{
public List<Topic>? Topics { get; set; } = null!;
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<MyEntity>(
b =>
{
b.Property(e => e.Topics)
.HasConversion(
v => JsonSerializer.Serialize(v, default),
v => JsonSerializer.Deserialize<List<Topic>>(v, default));
});
}
When storing this data:
{
"topics":[{
"name": "language",
"description": "HelloWorld"
}]
}
It gets stored as:
[{"Name":0,"Description":"HelloWorld"}]
How can I store Category
as a string (Language
instead of 0
)?