将VB.Net 2008项目升级到VS2010的问题

Bre*_*gby 20 nant continuous-integration visual-studio-2010

我已经将几个不同的VS2008项目升级到VS2010,并且在转换时发现了VB.Net项目的问题.

转换后,VS2008中的.vbproj文件已从此更改:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
   <DebugSymbols>true</DebugSymbols>
   <DebugType>full</DebugType>
   <DefineDebug>true</DefineDebug>
   <DefineTrace>true</DefineTrace>
   <OutputPath>bin\Debug\</OutputPath>
   <DocumentationFile>CustomerManager.xml</DocumentationFile>
   <WarningsAsErrors>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</WarningsAsErrors>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

在VS2010中:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
   <DebugSymbols>true</DebugSymbols>
   <DebugType>full</DebugType>
   <DefineDebug>true</DefineDebug>
   <DefineTrace>true</DefineTrace>
   <OutputPath>bin\Debug\</OutputPath>
   <DocumentationFile>CustomerManager.xml</DocumentationFile>
   <NoWarn>42353,42354,42355</NoWarn>
   <WarningsAsErrors>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</WarningsAsErrors>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

主要区别在于VS2010版本中添加了42353,42354,42355的值; 在IDE内部,它在Project Properties中显示为以下设置 编译部分为:

"函数返回没有返回值的内部值类型"=无

在Visual Studio 2010中构建代码时,这不是问题,但是当尝试通过我们的持续集成脚本构建代码时,它会因以下错误而失败:

[msbuild] vbc:命令行错误BC2026:选项'nowarn'的警告编号'42353'不可配置或无效

[msbuild] vbc:命令行错误BC2026:选项'nowarn'的警告号''42354'不可配置或无效

[msbuild] vbc:命令行错误BC2026:选项'nowarn'的警告号''42355'不可配置或无效

我在Google上找不到任何关于这些消息的内容,这很奇怪,因为我试图找出为什么会发生这种情况.

有关为什么Visual Studio 2010的转换向导正在执行此操作的任何建议?

Pao*_*olo 24

您是否更改了构建脚本以使用4.0版本的MSBuild?看起来像你没有和MSBuild抱怨它对警告42353等一无所知(如果在4.0中引入它们会有意义)