我正在接收不同架构的json文件,并且必须将它们转储到sql数据库中。解析不同架构的json文件到不同的表json.net
的JSON文件的架构
{'type':'abc','data':{'column1':'x','column2':'y',.........}}
对应每一个类型的模式我有一个名为类似的类型,但与单词“表”附强类型类..
如。 'abcTable'只有json.data(column1,column2,...)的模式
因此,我所能做的就是对主json进行动态反序列化,然后根据类型值做一个强烈的相应的数据进行类型JSON解析
dynamic jsondata = JsonConvert.DeserializeObject<dynamic>(json);
if (jsonata.type=='abc')
{
var abcobj = JsonConvert.DeserializeObject<abcTable>(jsondata.data);
}
在这里,我反序列化对象两次,所以看起来不喜欢做的正确的方式..
我也有25+这样的模式和类似类数
所以,我会用很多if /否则if/else语句...
我想知道是否有其他更好的解决我想要做的..
任何帮助表示衷心感谢的方式..
由于
请看看我的编辑,我已经提出代码避免很多如果。 – 2014-08-31 13:58:19