深入学习ing

将配置文件appsetting中的值转换为动态对象调用

该文可参考我的另一篇关联文章:   https://www.cnblogs.com/lxhbky/p/6957825.html

 

配置如下:

 <!--邀请用户送优惠券规则{邀请人规则:[{邀请人:优惠券ID}],使用邀请码人:优惠券ID},按照邀请人数从小到大配置-->
    <add key="INVITE_USER_RULE" value='{"InviteUser":[{"InvitePersonsCount":1,"CouponID":54},{"InvitePersonsCount":3,"CouponID":55},{"InvitePersonsCount":6,"CouponID":56}],"UseInviteUserCouponID":57}' />

转换如下:

//获取外围属性的值:

 string inviteUserRule = ConfigSetting.INVITE_USER_RULE;
//inviteRuleObj的类型是JObject                            
dynamic inviteRuleObj = JsonHelper.ConvertStrToJson<dynamic>(inviteUserRule);
//获取外围属性
int welcomeCouponID = inviteRuleObj.UseInviteUserCouponID;

//获取属性对应的集合

JArray inviteUserRuleObj = inviteRuleObj.InviteUser;
foreach (var item in inviteUserRuleObj)
{
    inviteUserCount = item.Value<int>("InvitePersonsCount");
    couponID = item.Value<int>("CouponID");
}

//也可以写成以下方式

string inviteUserStr=JsonHelp.ConvertJsonToStr(inviteRuleObj.InviteUser);

List<dynamic> inviteUserList=JsonHelper.ConvertStrToJson<dynamic>(inviteUserStr);
foreach (var item in inviteUserList)
{
    inviteUserCount = item.Value<int>("InvitePersonsCount");
    couponID = item.Value<int>("CouponID");
}

 

posted on 2018-09-14 19:34  深入学习ing  阅读(925)  评论(1编辑  收藏  举报

导航