将C#和VB混合在同一个项目中

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

能将vb和c#文件混合在类库的同一个项目中吗?是否有某种环境使之成为可能?

我试过了,而且没有一个IntelliSense工作得很好,尽管后台编译器似乎处理得很好.

提问于
用户回答回答于

它编译得很好,没有抱怨是因为VB。NET项目实际上只编译。VB文件和C#项目实际上只编译。CS文件。它忽略了其他的错误,因此你没有收到错误。

编辑:如果你加了一个。VB文件到C#项目中,在解决方案资源管理器面板中选择该文件,然后查看Properties面板,您会注意到BuildAction是“Content”,而不是“Complete”。它被视为一个简单的文本文件,甚至不会作为二进制资源嵌入到编译的程序集中。

编辑:使用ASP.NET网站,您可以向vb.net网站添加c#web用户控件。

用户回答回答于

事实上,几年前我继承了一个项目,他的同事决定将VB和C#WebForms混合在同一个项目中。这是有效的,但远没有乐趣来维持。

我决定新代码应该是C#类,为了使它们正常工作,我必须向web.config的编译部分添加一个子节点

        <codeSubDirectories>
            <add directoryName="VB"/>
            <add directoryName="CS"/>
        </codeSubDirectories>

所有VB代码都进入应用程序中的一个子文件夹[医]名为VB的代码和CS子文件夹中的C#代码。这会产生两个。DLL文件。它可以工作,但代码编译的顺序与“codeSubDirecors”中列出的顺序相同,因此,如果在C#和VB中使用,接口应该在VB文件夹中。

我有一个对VB和C#编译器的引用

<system.codedom>
    <compilers>

扫码关注云+社区