Я пытаюсь сохранить данные в столбце таблицы базы данных SQL Server 2019+ в формате JSON с помощью Entity Framework Core 9.
В этом столбце должен храниться список объектов разных типов, которые имеют некоторые общие свойства и другие свойства, специфичные для объекта.
Я использую интерфейс для определения общих свойств, однако на данный момент Entity Framework Core не поддерживает сущности из интерфейсов .
Как я могу структурируйте классы и наследование, чтобы иметь возможность хранить данные JSON следующей структуры в столбце базы данных.
[
{
"common_field_1":"value 1",
"commonField_2":"value 2"
},
{
"common_field_1":"value 1s",
"commonField_2":"Value 2 s",
"custom_field_o2" : "Object type2 custom field"
},
{
"common_field_1":"value 1 th",
"commonField_2":"Value 2 th",
"custom_field_o3":[
"Option 1",
"Option 2"
]
}
]
Я хочу воспользоваться преимуществами поддержки JSON в EF Core 7+. Я не хочу использовать резервное поле, которое я могу хранить и извлекать в формате JSON вручную.
Сейчас я пытаюсь сделать что-то вроде этого:public interface ICommonProperties
{
string common_field_1 { get; set; }
string commonField_2 { get; set; }
}
public class BaseClass : ICommonProperties
{
public string common_field_1 { get; set; }
public string commonField_2 { get; set; }
}
public class ConcreteClass2 : BaseClass
{
public string custom_field_o2 { get; set; }
}
public class ConcreteClass3 : BaseClass
{
public List custom_field_o3 { get; set; }
}
public class EntityObject
{
//... other fields
public List DynamicJson { get; set; } // ICommonProperties doesn't work here
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... -with-enti
Храните разнообразную структуру JSON в одном столбце базы данных SQL Server с помощью Entity Framework Core 9. ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение