C#如何仅在语言版本大于X的情况下编译一段代码?

问题描述 投票:0回答:0

我知道也有人问过类似的问题,而答案通常是:不要这样做。

参见:有c#语言版本的指令吗如何使用预处理器知道C#的版本?

但这不是问题的答案,让我解释一下。我的问题是我正在尝试编辑一个必须能够使用旧语言版本(而不是框架版本)进行编译的库(cs 项目)。我添加的新代码不必可供使用 C# 5.0 等编译的项目使用。但整个项目仍然必须在较旧的 C# 版本上进行编译,以免因错误修复等而分支。

所以我希望旧版 C# 编译器忽略我添加的文件。

我无法为我的配置更改该库的 .csproj,因为这会影响使用该库的所有解决方案。

也许有一个类似解决方案的东西

#define
?我的意思是我可以这样做(C# 预处理器根据环境变量定义符号),但它看起来很老套。

LG 雅各布

c# .net version preprocessor
© www.soinside.com 2019 - 2024. All rights reserved.