反射应用
2018-06-17 21:04:32来源:未知 阅读 ()
1.通过反射实现多系统数据库的配置
通过定义接口,反射实例化配置的节点的值
配置App.config,(关于APP.config的配置有一篇博文很丰富,参见周公博客)
<?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="DAL" value="FactoryInterface.Oracle"/> </appSettings> </configuration>
通过System.Configuration.ConfigurationManager.AppSettings读取该key的value,使用Configuration需要将其dll添加到项目中
接口定义
namespace FactoryInterface { interface IDAL { void insert(); } }
Program定义
namespace FactoryInterface { class Program { static void Main(string[] args) { string config = System.Configuration.ConfigurationManager.AppSettings["DAL"]; Console.WriteLine(config); Type t = Type.GetType(config); IDAL dal =(IDAL) System.Activator.CreateInstance(t); dal.insert(); Console.ReadKey(); } } class MySql : IDAL { public void insert() { Console.WriteLine("this data insert by MySql"); } } class Oracle : IDAL { public void insert() { Console.WriteLine("this data insert by Oracle"); } } }
输出效果:
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:反射基础
下一篇:进程与多线程、死锁初步理解
- python3 enum模块的应用 2019-08-13
- 浅谈 Web框架 2019-08-13
- python 之 并发编程(生产者消费者模型、守护进程的应用) 2019-07-24
- Python-17-反射 2019-07-24
- python 通过Sybase ASE ODBC Driver访问sybase数据库,无需 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash