0
A
回答
3
您可以使用Environment類的Version屬性。 Conciral主版本號和次版本號將爲您提供框架版本(例如2.0)。 MSDN:http://msdn.microsoft.com/en-us/library/system.environment.version.aspx
1
如果你想獲得currenly運行CLR版本,使用Novakov的方法(如4.0.30319.239):
Environment.Version
如果你想知道CLR版本的項目建成反對(如4.0.0.0),使用以下命令:
GetType().Assembly.GetReferencedAssemblies().Single(a => a.Name == "mscorlib").Version
這可能給你一個不同的值比當前運行的CLR,因爲舊版本的組件可以在CLR的較新版本上運行。請注意,2.0,3.0和3.5的「目標框架」在這裏都會返回2.0.0.0,因爲它們都是針對CLR的2.0版本構建的。
可以進行額外的檢查可以揭示CLR 2.0項目建成使用的3.5的目標框架:
typeof(ConsoleSandbox.Program).Assembly.GetReferencedAssemblies()
.SingleOrDefault(a => a.Name == "System.Core") == null
上述表達式的值爲true,如果目標框架是3.5(或4.0如果mscorlib是4.0.0.0),並且如果目標框架是2.0或3.0或者沒有使用System.Core.dll(例如升級的2.0/3.0項目),則評估爲false。
如果你解釋了你的問題背後的需要,它可能會給你一個更好的答案。
相關問題
- 1. .Net框架 - 「無法找到運行時運行該版本的應用程序」
- 2. 強制應用程序在特定的.NET運行時版本下運行?
- 3. 在應用程序運行時檢測框架版本
- 4. 在任何框架運行.NET 2.0的應用程序
- 5. 如何確定我的應用程序何時運行?
- 6. 如何告訴應用程序在特定的.net運行時上運行
- 7. 在.NET框架上運行.NET核心應用程序
- 8. 運行時使用的應用程序框架版本目標和網絡框架版本
- 9. 在舊版本的.net上運行應用程序
- 10. 確定正在運行的應用程序的類型(.NET)
- 11. 無法找到運行此版本的應用程序運行此應用程序在XP SP3上的.net 4.0
- 12. 如何告訴我在運行時使用的實體框架的版本?
- 13. 我想只在版本ICS上運行我的應用程序
- 14. MMC .Net運行時版本
- 15. eclipse如何運行時,它運行一個web應用程序
- 16. IIS6列出應用程序池運行的.net版本
- 17. 如何指定在運行時使用哪個.NET框架
- 18. 在運行時確定Spring版本
- 19. .net運行時試圖使用程序集的錯誤版本
- 20. 運行.NET框架.NET框架下1.1程序4.0
- 21. .NET核心應用程序 - 如何在運行時獲取內部版本號
- 22. 我的應用程序面向.NET 3.5框架運行的平臺是什麼?
- 23. c#從程序集中獲取框架/運行時版本
- 24. 在沒有.NET框架的情況下運行.NET應用程序
- 25. 在較低的.NET版本下運行.NET 4程序
- 26. 如何知道我的程序在哪個版本的.NET Framework上運行?
- 27. 如何確定哪些正在運行的應用程序使用.Net
- 28. 確定運行.NET應用程序的系統要求
- 29. 的iPad模擬器運行舊版本我的應用程序
- 30. 如何讓我的自定義目標只在運行ant版本時運行?
謝謝,但沒有給出框架版本 - 它給出了CLR版本。 – ChrisJJ