我目前正在探索将VB.net和C#.net结合到同一个解决方案中的可能性,以期停止编写VB.net代码,然后再下线,重构已写入C#的内容。我对.net框架的理解表明,我可以使用另一种语言扩展一种语言的类,但我找不到使其工作的方法。
作为一个模型,我创建了一个看起来很像这样的VB.Net控制台应用程序:
Namespace CrossLanguage
Module Module1
Sub Main()
Console.WriteLine("This is a test")
Console.ReadLine()
Dim x As New Test
x.WriteMeAnAnimal()
End Sub
End Module
Public Class Test
Sub WriteMeAnAnimal()
Console.WriteLine("An animal")
Console.ReadLine()
End Sub
End Class
End Namespace
这是有效的,并没有真正的问题。我可以运行应用程序,在第一个ReadLine,我可以提交任何我喜欢的东西,并出现“动物”。现在,我接下来要做的就是使用一个类文件创建一个新的C#项目。我添加了一个指向VB.net项目的项目引用(这很好),但是我无法让C#类看到VB类存在:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Test;
namespace CrossLanguage
{
public class Dog : Test
{
}
}
对Test的引用的IDE错误,整个“找不到,你错过了......”恶作剧。
我错过了什么吗?
答案 0 :(得分:-1)
可悲的是,这似乎是Visual Studio的一些怪癖。审查了你的评论后,我今天坐下来打开了解决方案,尝试了几件事情,好吧,它没有改变任何东西。
感谢您的帮助。
Ashilta