質問

過去には、.NETのすべての新しいバージョンにCLRの新しいバージョンが付属しているわけではありません。 .NET 1.0、1.1、2.0、および4.0が行ったことは知っていますが、.NET 3.0と3.5はそうではありませんでした。

.NET 4.5は新しいCLRを導入しますか?そして、新しいCLRがあるかどうかはどのようにわかりますか?

役に立ちましたか?

解決

はい、.NET 4.5には、CLRの新しいバージョンスパンキングのブランドがあり、での改善について読むことができます。

http://blogs.microsoft.co.il/blogs/sasha/archive/2011/09/17/improvements-in-clr-core-in-net-framework-4-5.aspx

明確にするために;これは実際にCLRの新しいバージョンです 交換 4.0のものなので、更新と呼ぶか、新しいCLRと呼ぶかは議論の余地があります。

実行中のCLRバージョンを確認するには、使用してください

System.Runtime.InteropServices.RuntimeEnvironment.GetSystemVersion()

他のヒント

いいえ、まだバージョン4.0.30319です。 clr.dllと友人の新しい改訂は、マシン上の既存のものを置き換えます。 .NET 3.0、3.5、および3.5SP1で使用される同じスキーム。 4.5がインストールされているかどうかを確認するには、それらのバージョンと同じアプローチが必要です。 レジストリを確認してください.

はい。 CLR変更のバージョン から 4.0.30319.2694.0.30319.17379. 。したがって、CLRは新しいですが、.NET 4.0 CLRとは後方互換性があります。 .NET v4.0のために記述され、コンパイルされたコードを再コンパイルする必要はありません。

から .NETフレームワークバージョンと依存関係 MSDNのページ:

.NETフレームワーク4.5 RCは、コンピューターの.NETフレームワーク4を置き換えるインプレースアップデートです。この更新をインストールした後、.NETフレームワーク4アプリは、再コンパイルを必要とせずに実行を続ける必要があります。ただし、.NETフレームワークの一部の変更には、アプリコードの変更が必要になる場合があります。

さらに、から .NETフレームワークブログ:

.NET Framework 4.5は、.NET Framework 4を置き換えるインプレースアップデートです(並べてインストールではなく)。私たちの目標は、.NET 4.5が.NET 4用に構築されたアプリケーションと完全に後方互換性を持つことです。

いくつかの変更があります いいえ 後方互換性。を参照してください .NETフレームワーク4.5 RCのアプリケーション互換性 MSDNのページ。

Microsoftからの公式ガイダンス、および優れたコーディングプラクティスは、CLRの特定のバージョンを検出しないことです。むしろ、特定の機能が存在するかどうかを検出する必要があります。それ以外の

public static bool IsDotNet45()
{
    return Environment.Version.Major == 4 &&
           Environment.Version.Revision > 17000;
}

次のようなことをします:

public static bool SupportsReflectionContext()
{
    // Class "ReflectionContext" exists from .NET 4.5 onwards.
    return Type.GetType("System.Reflection.ReflectionContext", false) != null;
}

これが質問の時点で現在の形式で利用できるとは思わないが、ここに CLRガイド MSDNでは、すべてのフレームワークバージョンとそれらに含まれるCLRバージョンを表示します。私はそれが非常に役立つと思ったので、私は共有すると思いました。

の隣に .NET 4.5 それには含まれると述べています CLR 4.

.NET 4および.NET 4.5(4.5.1および4.5.2を含む)はCLRバージョン4.0にあります

もっと詳しく: https://msdn.microsoft.com/en-us/library/8bs2ecf4(v=vs.110).aspx

.NETフレームワーク4.5は、いくつかの追加機能を備えた.NETフレームワーク4へのサービスパックのようなものです。

Scott Hanselmanは、この質問に対処する彼のブログに投稿をしています。あなたはそれについてここで知ることができます:

http://www.hanselman.com/blog/netversioningandmultitargetingnet45isaninplaceupgradetonet40.aspx

それ以外は、パフォーマンスを改善し、新しいライブラリを追加するCLRに更新があることです。 .NET 4.5で使用されるCLRは、.NET 4と互換性があります。これは、マイナーアップデートと見なされます。これらのマイナーアップデートは、Microsoftがインプレイスアップデートと呼んでいるものです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top