Jun*_*r M 5 asp.net msbuild-4.0
我正在使用Visual Studio 2010.
我已经下载了一个更新的类(即UpdatedClass.cs),它有一个带有可选参数的方法,例如:
public void DoThis(bool aValue = false) {...}
Run Code Online (Sandbox Code Playgroud)
使用Visual Studio 2010,我可以编译它.但我不能用MSBuild做到这一点:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe /t:Rebuild /clp:ErrorsOnly D:\folder\mySolution.sln
ln
Microsoft (R) Build Engine Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5448]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
UpdatedClass.cs(29,94): error CS0241: Default parameter specifiers are not permitted
Run Code Online (Sandbox Code Playgroud)
好吧,使用此编译器不允许使用可选参数.那么我可以在这个MSBuild命令中添加一个额外的参数,以忽略这种错误吗?
或者我是否必须使用编译项目C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe?关于asp.net项目这是安全的吗?
如果您使用 C# 4 语法,则必须使用 4.0 编译器。这意味着您需要在打算部署此代码的服务器上运行 .Net 4.0。或者 - 重写代码不使用默认参数,这并不难 - 只需添加如下重载:
public void DoThis() {DoThis(false);}
public void DoThis(bool aValue) {...}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3137 次 |
| 最近记录: |