具有多种语言的Web站点无法在C#代码中使用VB.NET类

我正在使用VS 2008中的VB.NET默认语言为网站项目开发新function。由于我的首选语言是C#,我在App_Code文件夹中为C#代码创建子文件夹,并将相应的codeSubDirectories元素添加到web.config文件中。 问题是我不能在我的C#代码中引用VB.NET类。 所有VB.NET类和结构都放在App_Code的全局命名空间中。 但即使我将一些VB.NET类放在我用于C#中的类的同一名称空间中,我仍然无法使用它们。 此外,我试图将我的类移动到全局命名空间,但这也没有帮助我。

在此处输入图像描述

从codeSubDirectories的文档:

构建顺序是从codeSubDirectories集合的自上而下的顺序推断出来的。 App_Code目录最后构建。

这意味着在编译C#代码时,VB代码尚未编译。 您可以尝试分离基类等,并将它们放在较早的子目录中或放入编译的类库中,但我可能建议您只在VB中编写代码 – 在使用时编写代码并不是那么棘手另一方面 – 框架仍然是框架。

在名为CSCode和VBCode的App_Code文件夹下创建两个文件夹。 将您的相应文件移动到受尊重的文件夹

在web.config文件中添加以下代码:

      

然后尝试……

-Rakesh