怎么在C#中将appsetting中的值转换为动态对象

本篇文章为大家展示了怎么在C#中将appsetting中的值转换为动态对象,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

配置如下:

 <!--邀请用户送优惠券规则{邀请人规则:[{邀请人:优惠券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中的值转换为动态对象,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。