欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-12-16 20:05:22
配置如下: ...

配置如下:

 <!--邀请用户送优惠券规则{邀请人规则:[{邀请人:优惠券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");
}

总结

以上所述是小编给大家介绍的c#将配置文件appsetting中的值转换为动态对象调用的相关知识,希望对大家有所帮助

上一篇:

下一篇: