生成语言版本较低的.cs文件

  • 本文关键字:cs 文件 语言 版本 c#
  • 更新时间 :
  • 英文 :


背景

我正在为古老的网络系统开发一个扩展代码。

系统要求所有.cs文件都是C#6.0语言版本。所述古代系统在运行时读取.cs文件。因此,我唯一能做的就是按原样准备"原始".cs文件,而不是编译后的.dll文件。

问题

有没有一种方法可以用最新版本编写.cs,然后简单地将其"翻译"为旧版本?

请注意,TargetFramework选项不起作用,因为我没有进行任何编译。我只是想把.cs转换成另一个.cs

示例

namespace Test;
// code...

这个文件范围的名称空间在现代C#10.0中可以工作,但如果我试图将其输入到较旧的系统中,它就会失败。由于C#6.0中不存在此功能。

所以,如果我可以的话会更好:

////////// source.cs
namespace Test;
public class Class {}
//////////
// some magic happens...
////////// dist.cs
namespace Test {
public class Class {}
}
//////////

使用您选择的版本编译代码,然后使用ILSpy反编译,同时将语言版本设置为C#6.0。

最新更新