C# 静态枚举类的Msbuild.exe中出错
我在静态分部类(Helper.cs)中添加了枚举。当我在其他文件中引用此枚举时,会添加automatically using block,如-“using static Common.Util.Helper” 因此,如果我从文件夹-“Microsoft.NET\Framework64\v4.0.30319\msbuild.exe”执行msbuild,它将不工作,并出现如下错误- 错误CS1041:应为标识符;'“static”是一个关键字 但在VS 2015中,它构建得很好。我使用的是VS 2015和框架版本4.5。那么,我是否需要在msbuild中添加任何设置或为此提供任何解决方案 提前谢谢 使用C# 静态枚举类的Msbuild.exe中出错,c#,visual-studio-2015,msbuild,c#-5.0,C#,Visual Studio 2015,Msbuild,C# 5.0,我在静态分部类(Helper.cs)中添加了枚举。当我在其他文件中引用此枚举时,会添加automatically using block,如-“using static Common.Util.Helper” 因此,如果我从文件夹-“Microsoft.NET\Framework64\v4.0.30319\msbuild.exe”执行msbuild,它将不工作,并出现如下错误- 错误CS1041:应为标识符;'“static”是一个关键字 但在VS 2015中,它构建得很好。我使用的是VS 20
“C:\ProgramFiles(x86)\MSBuild\14.0\Bin\MSBuild.exe”
相反。从你的using语句中删除
static
实际上,我不想这样做,因为我在这么多地方提到了这个类,而这个变化导致我在所有地方都发生了变化。相反,我希望看到一些与MSBuild相关的解决方案,因为这段代码在VS2015中工作!!那么使用static
是在c#6.0
中引入的,您已经用c#5.0
标记了您的问题,因此如果您真正使用的是版本5,那么这是您唯一的选择在MSBuild脚本中使用的工具版本和目标框架版本是什么?如何检查正在使用的c版本?还有TargetFrameworkVersion-4.5和x64,我不明白你说的Toolsversion是什么意思?很好。这对我有用。这两者之间的区别是什么?这一个使用Visual Studio 2015使用的构建工具,包括用于c#6的csc.exe
编译器。是否需要引用相同的路径来构建x64 dll?32位MSbuild对于生成64位输出程序集非常有效。每次使用带有上述路径的MSbuild进行构建时,我都会获得32位dll。我已将平台设置为x64,但当我使用MSBuild构建时,我得到的是X86 dll(我在记事本中签入的是PE L),但当我为同一项目在VS 2015中构建时,它显示的是PE dt,即64位dll)