我的做法:
{
'data' : [
{
'ServiceId' : 1
'Name': 'Publish',
'LongName': 'Long description of Publish service',
'OptionalFlag': 'default',
'Parameters': [
{ 'Id': 7, 'Amount': 7, 'Unit': 'days', 'Cost': 150, 'Surcharge': 0.0 },
{ 'Id': 14, 'Amount': 14, 'Unit': 'days', 'Cost': 600, 'Surcharge': 2.0 },
{ 'Id': 30, 'Amount': 1, 'Unit': 'month', 'Cost': 1350, 'Surcharge': 3.0 },
]
},
{
'ServiceId' : 2
'Name': 'Premium',
'LongName': 'Long description of Publish service',
'OptionalFlag': 'disabled',
'Parameters': [
{ 'Id': 14, 'Amount': 14, 'Unit': 'days', 'Cost': 150, 'Surcharge': 0.0 },
{ 'Id': 30, 'Amount': 1, 'Unit': 'month', 'Cost': 600, 'Surcharge': 0.0 },
{ 'Id': 60, 'Amount': 2, 'Unit': 'month', 'Cost': 1500, 'Surcharge': 0.0 },
]
},
{
'ServiceId' : 3
'Name': 'SuperPremium',
'LongName': 'Long description of Publish service',
'OptionalFlag': 'disabled',
'Parameters': [
{ 'Id': 30, 'Amount': 1, 'Unit': 'month', 'Cost': 150, 'Surcharge': 0.0 },
{ 'Id': 60, 'Amount': 2, 'Unit': 'month', 'Cost': 600, 'Surcharge': 0.0 },
{ 'Id': 90, 'Amount': 3, 'Unit': 'month', 'Cost': 1500, 'Surcharge': 0.0 },
]
}
]
}
编辑:(格式细节)
您将不得不在代码中处理一些格式化细节,并且没有任何结构能够规避这些细节。例如,您如何存储百分比附加费值,然后应用数学计算总计。我个人喜欢用 1.0 = 100% 来代表他们。您还必须处理时间单位(例如天和月)的多元化问题。