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

所属分类: 软件编程 / C#教程 阅读数: 116
收藏 0 赞 0 分享

配置如下:

 <!--邀请用户送优惠券规则{邀请人规则:[{邀请人:优惠券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中的值转换为动态对象调用的相关知识,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

更多精彩内容其他人还在看

C# 大小写转换(金额)实例代码

C# 大小写转换(金额)实例代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm中Panel实现用鼠标操作滚动条的实例方法

由于在WinForm中Panel不能直接响应鼠标的滚动事件,只好采用捕获窗体的滚动事件。
收藏 0 赞 0 分享

C#访问应用程序配置文件的方法

C#访问应用程序配置文件的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#读写文件的方法汇总

C#读写文件的方法汇总,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#计算代码执行时间的方法

在一些测试工作时我们需要获得高精度的代码执行时间以比较其效率。
收藏 0 赞 0 分享

C# 动画窗体(AnimateWindow)的小例子

C# 动画窗体(AnimateWindow)的小例子,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# zxing二维码写入的实例代码

C# zxing二维码写入的实例代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

c#判断输入的是不是数字的小例子

c#判断输入的是不是数字的小例子,需要的朋友可以参考一下
收藏 0 赞 0 分享

c# 深拷贝与浅拷贝的区别分析及实例

浅拷贝(影子克隆):只复制对象的基本类型,对象类型,仍属于原来的引用. 深拷贝(深度克隆):不紧复制对象的基本类,同时也复制原对象中的对象.就是说完全是新对象产生的.
收藏 0 赞 0 分享

C#利用com操作excel释放进程的解决方法

最近利用Microsoft.Office.Interop.Excel.Application读取一个excel后,进程中一直存在excel,在网上找了一阵子,其中有几个解决方案
收藏 0 赞 0 分享
查看更多