博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ConfigrationSection配置应用示例
阅读量:6502 次
发布时间:2019-06-24

本文共 4123 字,大约阅读时间需要 13 分钟。

OrderElement.cs:

1 using System; 2 using System.Collections.Generic; 3 using System.Configuration; 4 using System.Linq; 5 using System.Text; 6  7 namespace TestSection.SectionClass 8 { 9     public class OrderElement : ConfigurationElement10     {11         [ConfigurationProperty("number")]12         public string Number13         {14             get15             {16                 return (string)base["number"];17             }18             set19             {20                 base["number"] = value;21             }22         }23 24         [ConfigurationProperty("amount", IsRequired = true)]25         public double Amount26         {27             get28             {29                 return (double)base["amount"];30             }31             set32             {33                 base["amount"] = value;34             }35         }36     }37 }

OrderElementColletion.cs

1 using System; 2 using System.Collections.Generic; 3 using System.Configuration; 4 using System.Linq; 5 using System.Text; 6  7 namespace TestSection.SectionClass 8 { 9     public class OrderElementColletion : ConfigurationElementCollection10     {11         protected override ConfigurationElement CreateNewElement()12         {13             return new OrderElement();14         }15 16         protected override object GetElementKey(ConfigurationElement element)17         {18             return ((OrderElement)element).Number;19         }20 21         public override ConfigurationElementCollectionType CollectionType22         {23             get24             {25                 return ConfigurationElementCollectionType.BasicMap;26             }27         }28 29         protected override string ElementName30         {31             get32             {33                 return "order";34             }35         }36 37         public OrderElement this[int index]38         {39             get { return (OrderElement)BaseGet(index); }40             set41             {42                 if (BaseGet(index) != null)43                 {44                     BaseRemoveAt(index);45                 }46                 BaseAdd(index, value);47             }48         }49     }50 }

 

OrderSection.cs:

1 using System; 2 using System.Collections.Generic; 3 using System.Configuration; 4 using System.Linq; 5 using System.Text; 6  7 namespace TestSection.SectionClass 8 { 9     public class OrderSection : ConfigurationSection10     {11         [ConfigurationProperty("companyID", IsRequired = true)]12         public String CompanyID13         {14             get15             {16                 return (string)base["companyID"];17             }18             set19             {20                 base["companyID"] = value;21             }22         }23 24         [ConfigurationProperty("", IsDefaultCollection = true)]25         public OrderElementColletion Orders26         {27             get { return (OrderElementColletion)base[""]; }28             set { base[""] = value; } 29         }30     }31 }

 

app.config配置方案1:   

1 
2
3
4
5
6 7
8
9
10
11

 引用1:  

1   static void Main(string[] args)2         {3             OrderSection config = (OrderSection)ConfigurationManager.GetSection("orders");4             Console.WriteLine(config.CompanyID);5             Console.WriteLine(config.Orders[0].Number);6             Console.WriteLine(config.Orders[0].Amount);7             Console.ReadKey();8         }

 

app.config配置方案2:   

1 
2
3
4
5
6
7
8
9
10
11
12
13
14

 引用2:

1   static void Main(string[] args)2         {3             OrderSection config = (OrderSection)ConfigurationManager.GetSection("myGroup/orders");4             Console.WriteLine(config.CompanyID);5             Console.WriteLine(config.Orders[0].Number);6             Console.WriteLine(config.Orders[0].Amount);7             Console.ReadKey();8         }

 

转载于:https://www.cnblogs.com/xmyy/articles/4000196.html

你可能感兴趣的文章
顶部滑动下拉广告
查看>>
简化代码的微小修改
查看>>
python之CSV文件格式
查看>>
你必须知道的.net学习总结
查看>>
leetcode之Reorder List
查看>>
Axure8.0 网页 or App 鼠标滚动效果
查看>>
文件操作示例脚本 tcl
查看>>
大家好,新年快乐。
查看>>
prototype
查看>>
Android学习路线
查看>>
Linux下的redis的持久化,主从同步及哨兵
查看>>
在相同的主机上创建一个duplicate数据库
查看>>
Date15
查看>>
从Date类型转为中文字符串
查看>>
基于multisim的fm调制解调_苹果开始自研蜂窝网调制解调器 最快2024年能用上?
查看>>
mupdf不支持x64_Window权限维持(七):安全支持提供者
查看>>
cf修改游戏客户端是什么意思_瓦罗兰特很有可能取代cf成为国内最火的fps游戏...
查看>>
proto文件支持继承吗_JavaScript继承(一)——原型链
查看>>
labview如何弹出提示窗口_LabVIEW开发者必读的问答汇总,搞定疑难杂症全靠它了!...
查看>>
提取series中的数值_Python中None和numpy.nan的区别
查看>>