本文实例讲述了c#反射应用。分享给大家供大家参考。具体如下:
通过反射实现多系统数据库的配置
通过定义接口,反射实例化配置的节点的值
配置app.config:
<configuration>
<appsettings>
<add key="dal" value="factoryinterface.oracle"/>
</appsettings>
</configuration>
通过system.configuration.configurationmanager.appsettings读取该key的value,使用configuration需要将其dll添加到项目中
接口定义:
{
interface idal
{
void insert();
}
}
program定义:
{
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#程序设计有所帮助。
您可能感兴趣的文章:
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
网友评论