首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >System.Reflection

System.Reflection
EN

Stack Overflow用户
提问于 2010-11-24 12:54:39
回答 2查看 84关注 0票数 1

我开发了一个名为AAA的应用程序,在该应用程序中,我引用了一个名为BBB的程序集。在某些情况下,我使用Assembly.LoadFromFile()函数将BBB程序集加载到我的应用程序中。现在我需要在运行time.Is时访问BBB程序集中的某些AAA对象实例可以完成此任务吗?提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2010-11-24 13:02:28

您是否正在尝试创建对象的新实例?如果是这样,这应该是可行的:

代码语言:javascript
运行
复制
Assembly ass = Assembly.LoadFrom("BBB.dll");
Object myObject = ass.CreateInstance("BBB.MyObject");

注意:这假设你的对象有一个默认的构造函数-如果你需要将参数传递给构造函数,你可以这样做(假设构造函数接受一个字符串作为它的参数):

代码语言:javascript
运行
复制
Assembly ass = Assembly.LoadFrom("BBB.dll");
Type t= ass.GetType("MyObject");
ConstructorInfo c = t.GetConstructor(new Type[]{typeof(string)});
Object myObject2 = c.Invoke(new object[] { "myParam" }
票数 0
EN

Stack Overflow用户

发布于 2010-11-24 13:02:53

让AAA在BBB加载后将对对象的引用传递给BBB中的某个变量。

要从BBB访问对象ooo,您应该为BBB提供一个对ooo的(可能是间接的)引用。AAA可以使用反射来发现BBB的适当入口点,然后将其提供给ooo。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4263585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档