.net VB编译类型实际上在同一DLL中时未定义
我完全被这搞糊涂了。我正试图编译一个从别人那里继承的VB项目。我已经在我的机器上从SVN存储库获得了完整的源代码,该项目是一个VS2008 VB.NET类库项目 为了简明扼要地解释这个问题,我将使用一些伪代码。此示例的dll结构如下所示:.net VB编译类型实际上在同一DLL中时未定义,.net,vb.net,compiler-construction,.net,Vb.net,Compiler Construction,我完全被这搞糊涂了。我正试图编译一个从别人那里继承的VB项目。我已经在我的机器上从SVN存储库获得了完整的源代码,该项目是一个VS2008 VB.NET类库项目 为了简明扼要地解释这个问题,我将使用一些伪代码。此示例的dll结构如下所示: MyProject.MyDll - MyAbstractClass.vb (Public MustInherit Class MyAbstractClass) - MyClass.vb (Public MustInherit Class MyClass I
MyProject.MyDll
- MyAbstractClass.vb (Public MustInherit Class MyAbstractClass)
- MyClass.vb (Public MustInherit Class MyClass Implements System.Collections.IEnumerator)
MyClass包含如下方法:
Public Overridable Function MyMethod(ByVal myAbClass As MyAbstractClass) As MyAbstractClass
哪些可能的情况会产生编译错误,如MyClass文件上未定义类型“MyAbstractClass”。
我从来没有接触过VB,我只是一个C#的家伙,但我的理解是,这些差异实际上或多或少都是语法上的,所以考虑到这些类在项目中或多或少是紧挨着的,我的C#brain很难找出这是一个问题的原因
如果类是在单独的项目中定义的,引用被破坏了,我可以更好地理解它,但这里不是这样。它在不同的名称空间中吗?不,它们在相同的名称空间中。它们都是抽象的(MustInherit)。您可以显示类型声明(包括名称空间)吗?我已经用两个声明更新了问题。我完全被这件事难住了。奇怪。。。