反射应用
2018-06-17 20:10:27来源:未知 阅读 ()
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
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- PHP路由技术的原理与实践 2019-09-30
- PHP代码审计,你会吗? 2019-09-04
- laravel结合workerman开发在线聊天应用 2019-09-02
- Redis在Laravel项目中的应用实例详解 2019-08-23
- 应用系统之间数据传输的四种方式 2019-08-23
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