我們的應用程序使用VS 2008構建,使用Linq並將Target Framework設置爲.NET Framework3.5。如何強制應用程序使用.NET 3.5或更高版本?
只有在計算機上安裝了.NET 3.5或4時才能正常工作。
但是,在安裝了.NET 2(或3.0)和.NET 4的計算機上,應用程序使用.NET 2加載,並在訪問Linq時崩潰,因爲它查找.NET 3.5庫。
在app.config中使用標籤似乎沒有幫助,因爲它指定CLR版本,在.NET 3.5中爲2。
請注意,我們的安裝驗證是否安裝了.NET 3.5或更高版本。
有沒有辦法告訴應用程序加載:
- 的最高CLR發現,或
- CLR 4如果已安裝,並CLR 2如果CLR 4未安裝,或者
- CLR 2如果安裝了.NET 3.5並且如果未安裝.NET 3.5,則爲CLR 4
(請注意,類似的問題在the Community Content section of the Element documentation沒有回答)
您無法使用此設置進行調試 - 它提供了一個錯誤,VS2008不支持.NET 4。儘管在VS之外運行發佈版本,但它工作正常。 – ChrisF 2010-10-17 12:25:25
至少在Framework v3.5中,如果元素不在文件的末尾( configuration>之前),那麼我有過應用程序無法啓動的經驗。如果你遇到啓動問題,值得嘗試將這段配置移到文件末尾。 –
SteveWilkinson
2011-12-21 22:06:45
如果我只支持v4.0作爲SupportedRuntime,並且系統僅支持v4.5,那麼它會啓動v.4.5嗎?如何強制使用一個版本? – Kamilos 2014-01-27 09:56:56