我正在开发一个在VB9(VS 2008)中启动的项目,现在我已经迁移到VS2010(VB10),但在生产服务器上,IDE仍然是VS 2008.在我的开发环境中,代码编译得很好,但是有时, - 让我们说 - 我在行的末尾忘记了_,导致VB9编译器抛出错误。
所以问题是,如何使用VS 2010 IDE而不是VB9编译器构建项目?或者强制VB10编译器进入VB9模式?
答案 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框架为目标。这将导致编译器对像_
的无效项目发出警告。
这可以从项目属性页面完成。
答案 1 :(得分:2)
我认为this question and answer可能与您的情况有关。