使用Visual Studio 2010的Visual Basic 9(或C#3)

时间:2010-06-03 05:46:21

标签: vb.net visual-studio-2010

我正在开发一个在VB9(VS 2008)中启动的项目,现在我已经迁移到VS2010(VB10),但在生产服务器上,IDE仍然是VS 2008.在我的开发环境中,代码编译得很好,但是有时, - 让我们说 - 我在行的末尾忘记了_,导致VB9编译器抛出错误。

所以问题是,如何使用VS 2010 IDE而不是VB9编译器构建项目?或者强制VB10编译器进入VB9模式?

2 个答案:

答案 0 :(得分:9)

不幸的是,没有办法实现这一目标。在Visual Studio中进行编译时,实际上并未使用命令行编译器。而是使用inproc托管编译器(对于VB.Net和C#都是如此)。这个编译器虽然能够为向下目标平台输出完全有效的IL,但它是与Visual Studio绑定的版本(在本例中为10.0)。

没有通用的方法来编译不同版本的编译器或命令行,并获得您正在寻找的行为。

您可以做的是将编译器的语言版本设置为9.这将针对VB9中不支持的解析级别构造的子集发出警告。这不能通过IDE完成,但可以直接编辑项目文件并插入以下内容

 <PropertyGroup> 
    <LangVersion>9</LangVersion> 
  </PropertyGroup> 

原始答案:适用于定位3.5,但不适用于此问题

您要做的是让您的VB项目以3.5框架为目标。这将导致编译器对像_的无效项目发出警告。

这可以从项目属性页面完成。

  • 右键单击项目并选择属性
  • 转到编译标签
  • 将目标设置为3.5

答案 1 :(得分:2)

我认为this question and answer可能与您的情况有关。