欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#反射应用实例

程序员文章站 2023-12-16 11:53:40
本文实例讲述了c#反射应用。分享给大家供大家参考。具体如下: 通过反射实现多系统数据库的配置 通过定义接口,反射实例化配置的节点的值 配置app.config: 复...

本文实例讲述了c#反射应用。分享给大家供大家参考。具体如下:

通过反射实现多系统数据库的配置

通过定义接口,反射实例化配置的节点的值

配置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");
        }
    }
}

输出效果如下图所示:

C#反射应用实例

希望本文所述对大家的c#程序设计有所帮助。

上一篇:

下一篇: