如何访问vb.net项目内部不同的C#成员

时间:2016-01-29 14:15:51

标签: c# vb.net

这:

RedirectMatch 302 ^/exam/(.+)$ /$1

是合法的C#现在我编译它等并将dll放在一个新的Vb.Net项目中:如何从VB.Net访问成员public class Something { public string lala = ""; public class Lala { //... } } ,如果我尝试我得到错误&#34; < EM>&#39;拉拉&#39;是不明确的,因为在Something&#34; 类中存在多种具有此名称的成员。

2 个答案:

答案 0 :(得分:1)

首先:添加对项目的引用。

add reference

浏览到Something_Lala DLL文件并添加它。

接下来,您需要将其导入到您的文件中,对其进行初始化,然后再使用它。

psudo code

示例代码看起来很糟糕,但这就是你让SO社区使用的全部内容。

答案 1 :(得分:1)

不幸的是,您可能不得不求助于反射才能访问此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'字段。