2011-12-13 5 views
6

私は、.netフレームワーク3.5をターゲットとしたソリューションを用意しました。コアdllへのすべての参照は、コンパイルされたランタイムバージョン2.xを持っています。それはなぜそうですか?これは私がこれらのDLLの最新バージョンをバグフィックスで使用していないことを意味しますか?なぜSystem.dllのバージョンが.netの.netフレームワーク3.5をターゲットとしているのですか?

答えて

6

Framework 3.5はまだCLR 2.0で動作しています。 V3とV3.5は、新しいクラスをいくつか追加したに過ぎませんでしたが、既存のアセンブリを変更しませんでした。コンパイラも変更されていますが、実際にはランタイムではありません。

そのため、%windir%\Microsoft.NET\Framework\v3.5(またはFramwork64)では、すでにV2で使用可能なアセンブリは見つかりません。

フレームワークV4では、新しいバージョンのCLRが導入されました。したがって、%windir%\Microsoft.NET\Framework\v4.0.30319すべてのアセンブリで見つけることができます。

Versions and Dependencies pageは、基本クラスライブラリバージョンとclrバージョンの両方のすべてのバージョンをリストします。

[編集]すぐにV4.5が登場するため、same table is availableは次のバージョンです。

1

いいえ、いくつかのアセンブリファイルで2.xに応じて最新の3.5を使用しています。 2.xに付属しているアセンブリをチェックしようとすると、それらのファイルの新しいバージョンが存在しないので、それらを3.xと見なすことはありません。あなたはprosperity->は、コンパイル>アドバンスコンパイルオプション - >ターゲットフレームワークをクリック投影し、外出先をターゲットにしているフレームワークを確認するには :

は1を追加します。

関連する問題