我有一个JSON,它的格式如下:
{
"header": {
"source_code": "S12345"
"user_id": "987456"
},
"body":{
"source_code": "S12345",
"wrapper_list": [
{
"item_wrapper_code": "WRAP01",
"item_amount": 10,
"item_type_amount": 2,
"creation_date": 20191115,
"worker": "W001",
"workstation_no": "1"
"item_list":[
{
"item_code": "I001"
"item_id": "",
"bar_code": "123987456"
"remark": ""
},
{
"item_code": "I002"
"item_id": "",
"bar_code": "213987456"
"remark": ""
}
]
}
]
}
}
上述JSON对象的主体包含父-子关系中的数据。
Parent: WRAP01
Child1: Item I001
Child2: Item I002
我必须能够解析这个JSON对象,并将这些详细信息作为行插入到各自的表中,即,父表中的相关内容和子表中的子表中的相关内容。
我请求这里的专业人士善意地指导我。
发布于 2019-11-18 06:21:35
因此,将Json解析为实体框架对象是一种糟糕的做法。
首先,创建将映射到Json的数据传输对象(DTO)。它类似于: RequestDto,BodyDto,WrapperDto,WrapperItemDto。
要解析它,您可以使用诸如newtonsoft之类的内容,参见示例:https://www.newtonsoft.com/json/help/html/DeserializeObject.htm
然后,您应该编写将映射到数据库表的EntityFramework对象。我希望您了解数据库理论,并且已经阅读了一些关于EntityFramework以及它如何实现不同的DB关系的文章。如果没有,那么请阅读它。
你需要一对多的关系。可以通过以下方式配置一对多关系。
使用Fluent API Configurations通过遵循约定对
你可以使用first way。这更容易。所以你需要两个类: WrapperEntity,WrapperItemEntity。
然后,您应该编写代码,将WrapperDto转换为WrapperEntity,将WrapperItemDto转换为WrapperItemEntity。然后将*Entity对象保存到数据库中。
这是实现这种逻辑的最佳实践。我将其解释为最高级别。有关详细信息,您可以分别在谷歌上搜索每个问题。
https://stackoverflow.com/questions/58908367
复制相似问题