2009-01-27 36 views

回答

7

很可能是因爲ASP.Net面向2.0框架的東西假設它將運行在可能需要編譯一些代碼的模式下。由於它在2.0模式下運行,因此它將在該階段獲得2.0編譯器(因此依賴於3.0編譯器的任何內容都將失敗)

當從'普通'項目中定位2.0代碼庫時,編譯完成,依靠3.0編譯器功能是好的。

1

當您定位.NET 2.0運行時時,您還將定位到C#2.0編譯器。該版本的編譯器不理解3.0功能。

1

這是一個現有的question,它處理在.NET 2.0項目中使用C#3.0功能。它解釋了哪些C#3.0功能可用,哪些不是以及如何使用它們。

爲了幫助您解決任何特定問題,我們需要具體的細節。

0

有關C#中高級功能以及它們如何從C#1.0發展到3.0的最佳信息源是Jon Skeet's book。他經常在這裏,甚至可能會提供一些額外的見解。但是,你真的應該有這本書。

0

正常的ASP.NET網站即時編譯,這意味着它將使用編譯器可用於Web服務器上的該虛擬目錄。如果它設置爲ASP.NET 2.0,它將使用2.0編譯器(而不是針對.NET 2.0的3.0編譯器)。 我假設您將網站轉換爲網絡應用程序時,您將能夠定位3.0並仍然使用某些3.0功能。我建議嘗試一下,我會的,但我現在沒有時間。讓我們知道它是否有效;-)

相關問題