【问题标题】:Is it possible to add some VB class in asp.net[c#] project?是否可以在 asp.net[c#] 项目中添加一些 VB 类?
【发布时间】:2014-02-19 03:14:50
【问题描述】:

我在一个项目中使用 asp.net [C#]。这是一个包括类的大项目。我需要添加一些 VB 类来实现一些计算。是否可以从 C# 代码调用 VB 类?

【问题讨论】:

  • 我所知道的唯一一次可以在同一个项目中混合 VB 和 C# 代码是“WEB Site”项目。在网站的情况下,它是 asp_net 编译你的类和*.*proj 文件不涉及,这就是为什么它是可能的

标签: c# asp.net vb.net


【解决方案1】:

我并不否认所有其他答案中提到的事实,即我们不能在同一个项目中混合使用语言。 最好的方法是创建一个单独的库并将其用作项目中的参考。这将更容易实现并且在可维护性方面更好。

但是对于 ASP.NET 网站,我们绝对可以使用来自不同语言的多个类。为了实现这一点,我们可以配置我们的 webapplciation 以创建 App_Code 文件夹的子文件夹作为单独的兼容单元,然后每个文件夹可以包含不同编程语言的源代码。

您可以按以下方式更改配置文件。

完成后,为文件夹中定义的语言添加相应的类。 CSCode文件夹中的C#和VBCode文件夹中的VB如下。

最后,您可以在您网站的其他区域使用它,如下所示。

【讨论】:

    【解决方案2】:

    只需在您的 C# 项目中添加您的 VB 项目的引用并使用该类。

    因为VB.NETC# 都编译为IL(中间语言),您可以简单地在VB.NET 中创建一个库(一个DLL 文件),然后在C# 中使用该库。

    【讨论】:

      【解决方案3】:
      1. 将 VB.net 类库项目添加到您的 C# 解决方案中。

      2. 将所有 VB.net 类添加到该类库中

      3. 从 C# 项目添加对 VB.Net 类库项目的引用

      【讨论】:

        【解决方案4】:

        不 - 您不能在 SAME 项目中混合使用语言 - 回答标题中的问题。

        您可以做的是引用包含该类的 VB 程序集。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-05-24
          • 1970-01-01
          • 2021-02-11
          相关资源
          最近更新 更多