在csc.exe中定位特定的frawework版本

如何通过命令行调用为csc.exe c#编译器指定目标框架版本(例如,没有.csproj文件而不通过MSBUILD引擎)?

例如,使用C#3.0 csc.exe编译器,如何编译为针对2.0 .net框架的IL?

在C#3编译器的特定情况下,只要您不使用任何不在.NET 2.0中的程序集或类型就没有问题 – IL是相同的(而不是针对1.1,对于实例)。

除此之外,您可以使用/ noconfig / nostdlib然后显式引用.NET 2.0程序集(例如,在c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727中)。 看起来像/ lib命令行选项可以通过让你指定一个目录来查找引用来使这稍微容易一点,但我自己没有尝试过。