![](/img/trans.png)
[英].NET Programming - Can I access members of a C-Sharp project from my VB.NET Project?
[英]How to access C# members that differ in case from inside a vb.net project
这个 :
public class Something
{
public string lala = "";
public class Lala
{
//...
}
}
现在是合法的C#,我将其编译,然后将dll放入新的Vb.Net项目中:如何从VB.Net访问成员lala
,如果我尝试得到错误“ 'lala'是模棱两可的,因为具有多种成员此名称存在于Something类中” 。
不幸的是,您可能不得不依靠反射来访问此dll。 一旦获取了'Something'类的System.Type实例(使用System.Reflection.Assembly类型的'GetType'实例方法),您将使用类型实例的'GetField'方法访问'lala'字段,并类型实例的“ GetNestedType”方法来访问“ Lala”嵌套类型。
Imports System.Reflection
...
Dim assembly As Assembly = Assembly.Load(...)
Dim outerType As Type = assembly.GetType("Something")
Dim field As FieldInfo = outerType.GetField("lala")
Dim nestedType As Type = outerType.NestedType("Lala")
然后,您将使用field.SetValue(..)和field.GetValue(..)访问“ lala”字段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.