zoukankan
html css js c++ java
两种动态创建对象的方法
1、如果要创建的对象,在一个assembly中,那么方法可以有很多。如这种方式:
System.Reflection.Assembly ass
=
System.Reflection.Assembly.LoadFrom(
@"
D:Programsvs.netInterfaceCominDebugCom.dll
"
);
Type t
=
ass.GetType(
"
Com.Class1
"
);
string
[] implCtorSig
=
{
"
System.String
"
}
;
Type[] ctorSigArr
=
Type.GetTypeArray(implCtorSig);
System.Reflection.ConstructorInfo ctorInfo
=
t.GetConstructor(ctorSigArr);
object
[] ctorArgs
=
{
"
1
"
}
;
object
obj
=
ctorInfo.Invoke(ctorArgs);
Com.IDict idict
=
(Com.IDict)obj;
2、如果对象在另一个assembly中,那么上述代码最后一行,会抛出一个invalid cast异常。而用下面的方式,是可以的:
System.Reflection.Assembly ass
=
System.Reflection.Assembly.LoadFrom(
@"
D:Programsvs.netInterfaceCominDebugCom.dll
"
);
Type t
=
ass.GetType(
"
Com.Class1
"
);
object
[] ctorArgs
=
{
"
1
"
}
;
System.Runtime.Remoting.ObjectHandle oh
=
Activator.CreateInstance(ass.FullName,t.FullName,
true
,System.Reflection.BindingFlags.CreateInstance,
null
,ctorArgs,System.Globalization.CultureInfo.CurrentCulture,
new
Object[]
{}
,
null
);
Com.IDict dict
=
(Com.IDict)(oh.Unwrap());
查看全文
相关阅读:
sql取每个分组的第一行数据
PHP microtime() 函数
笔记产品会不会被淘汰
making an os NO.1 怎样进内核之二
hjkhjkh
HTTP协议理解
hjkhjkh
making an os NO.1 怎样进内核之一
hjkhjkh
笔记产品会不会被淘汰
原文地址:https://www.cnblogs.com/juqiang/p/45430.html
最新文章
笔记:asp.net自定义控件的视图状态管理
给自定义控件添加主题支持
asp.net自定义控件中ToolboxBitmap元数据设置详细说明
c#文件下载代码
ASP.NET获取当前网址方法
ASP.NET使用Request获取来源网址URL参数
内容页访问母版页的属性及控件
C#中using System.Linq命名空间无法引用
JDK1.5官方下载 _JDK1.5API(chm)下载 以及 JDK环境变量配置(另附tomcat环境变量设置)
ASP.NET2.0导出Word文档(C#导出DOC)
热门文章
CSS Overflow属性详解
显示中文星期几
javascript日期时间倒计时集合
date_default_timezone_set
PHP DOMDocument操作 XML类 属性、方法
SQL行转列
get_defined_vars
PHP explode() 函数
PHP函数set_magic_quotes_runtime()的作用
PHP $_SERVER详解
Copyright © 2011-2022 走看看