2008-09-28 45 views
13

如何通過命令行調用爲csc.exe c#編譯器指定目標框架版本(例如,沒有.csproj文件並且不通過MSBUILD引擎)?針對csc.exe中的特定frawework版本

例如,使用C#3.0 csc.exe編譯器,您如何編譯爲IL來定位2.0 .net框架?

回答

4

在C#3編譯器的特定情況下,只要不使用任何不在.NET 2.0中的程序集或類型,就沒有問題 - IL是相同的(而不是以1.1爲例)。除此之外,您可以使用/ noconfig/nostdlib,然後明確引用.NET 2.0程序集(例如,在c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727中)。它看起來像/ lib命令行選項可以讓這個稍微簡單一些,讓你指定一個目錄來查找引用,但我沒有嘗試過。

+0

這似乎工作(明確引用2.0庫),但第一個建議只依賴於IL是相同的事實)似乎讓我'暴露'(例如,沒有編譯時警告,我已經偏離了2.0版的組件)。 – sbohlen 2008-09-28 16:10:55

相關問題