繁体   English   中英

我可以根据C#版本制定预处理器指令吗?

[英]Can I make a preprocessor directive dependent on the C# version?

是否可以定义一个编译时间常数,该常数将说明代码是由C#5还是C#6编译的? 例如:

<DefineConstants Condition=" '$(???LanguageVersion???)' != 'v6.0' ">
     NOT_RUNNING_ON_6
</DefineConstants>

项目文件中定义的常量全部由MSBuild设置。 哪个不知道编译器版本。 它还仅将所有这些属性委派给Csc任务。 由于编译器不会根据版本设置常量,因此您根本无法做到这一点。

不过,您可以使用自定义构建过程包装程序来确定编译器版本并相应地更改项目文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM