zoukankan
html css js c++ java
C#反射实例讲解
创建用于反射使用的DLL
新建一个C#类库项目,拷贝源代码如下,编译生成DLL(假如DLL的文件名是TestReflect.dll)
using
System;
namespace
Webtest
{
/**/
/**/
/**/
///
<summary>
///
ReflectTest 的摘要说明。
///
</summary>
public
class
ReflectTest
{
public
ReflectTest()
{}
public
string
WriteString(
string
s)
{
return
"
欢迎您,
"
+
s;
}
/**/
/**/
/**/
///
<summary>
///
dsajkjflasjdfalksdjfaskfd
///
</summary>
///
<param name="s"></param>
///
<returns></returns>
public
static
string
WriteName(
string
s)
{
return
"
欢迎您光临,
"
+
s;
}
public
string
WriteNoPara()
{
return
"
您使用的是无参数方法
"
;
}
}
}
2 应用于反射的例子
在ASPNET页面中加入以下函数:
public
void
test1()
{
System.Reflection.Assembly ass;
Type type ;
object
obj;
try
{
ass
=
System.Reflection.Assembly.LoadFile(
@"
d:\TestReflect.dll
"
);
type
=
ass.GetType(
"
Webtest.ReflectTest
"
);
//
必须使用名称空间+类名称
System.Reflection.MethodInfo method
=
type.GetMethod(
"
WriteString
"
);
//
方法的名称
obj
=
ass.CreateInstance(
"
Webtest.ReflectTest
"
);
//
必须使用名称空间+类名称
string
s
=
(
string
)method.Invoke(obj,
new
string
[]
{
"
jianglijun
"
}
);
//
实例方法的调用
Response.Write(s
+
"
<br>
"
);
method
=
type.GetMethod(
"
WriteName
"
);
//
方法的名称
s
=
(
string
)method.Invoke(
null
,
new
string
[]
{
"
jianglijun
"
}
);
//
静态方法的调用
Response.Write(s
+
"
<br>
"
);
method
=
type.GetMethod(
"
WriteNoPara
"
);
//
无参数的实例方法
s
=
(
string
)method.Invoke(obj,
null
);
Response.Write(s
+
"
<br>
"
);
method
=
null
;
}
catch
(Exception ex)
{
Response.Write(ex
+
"
<br>
"
);
}
finally
{
ass
=
null
;
type
=
null
;
obj
=
null
;
}
}
查看全文
相关阅读:
java实现简单web服务器(分析+源代码)
Java中常见的5种WEB服务器介绍
Android ViewDragHelper完全解析 自定义ViewGroup神器
设置SVN,Git忽略MAC的.DS_Store文件的方法
Android中图片大小和屏幕密度的关系讲解
Android组件化方案及组件消息总线modular-event实战
机器学习在美团配送系统的实践:用技术还原真实世界
智能支付稳定性测试实战
数据库智能运维探索与实践
【人物志】技术十年:美团第一位前端工程师潘魏增
原文地址:https://www.cnblogs.com/engine1984/p/863581.html
最新文章
Redis(六)Lua脚本的支持
Redis(五)事务
Redis(四)Pub/Sub
Redis(三)数据类型
Redis(二)特性和学习路线
上课备课的阶段结束。重新开始科研的感受
positive-sense和negtive-sense的区别
第一个学期上三门课还要搞科研的青椒感想
封装python的app以及爬虫采数据的一些问题
矩阵的零化度以及机器学习的概念漂移问题
热门文章
使用公式编辑器和office自带公式编辑功能以及latex比较
PL2303驱动和win10的化合作用
以无线传感器网络教学资源寻找为例,总结一下EECS的资源
对于大数据学习的探索
对于授课准备工作结束的一些总结
MAC图片格式转换
Android中图片大小和屏幕密度的关系讲解
从零开始学习OpenGL ES之一 – 基本概念
linux 添加用户、权限
实战WEB 服务器(JAVA编写WEB服务器)
Copyright © 2011-2022 走看看