WinRT には一連のプロジェクションがあり、そのうちの 1 つは winrt API を「.net フレームワーク」に適した方法で投影するように設計されており、別のプロジェクションは Cpp および html/js スタックに使用されます。
実際、誰かが他の言語やフレームワークをサポートするために新しいプロジェクションを作成したい場合は、それを行うことができます.
物事を .net フレームワークのように見せることには、一連の重要な目的があります。
.net 開発を既に知っている最初の開発者は、ゼロから始める必要はありません。winrt は、通常の .net フレームワーク プログラムとほぼ同じように見えます。
次に、プラットフォームに依存しない多くの .net フレームワーク コードが存在するため、このコードはフレームワーク コア ルーチンのサブセットのみをサポートする任意の環境で再コンパイルまたは再利用できます。 .net 開発者向けの機能。
最後になりましたが、現在の .net 開発者は多くのコードを作成しており、'.net' プロジェクションを作成する際の Microsoft のコミットメントの 1 つは、既に作成された .net ルーチンとの互換性を提供することでした。および.netフレームワークの対応物として見える署名。
それらは参照アセンブリであり、「プロキシ アセンブリ」のようなものです。プロキシは、何らかの方法で実際のオブジェクトのように見える必要がありますが、実際のオブジェクトの完全なイメージではありません。Winrts .net プロジェクションは完全な .net 参照アセンブリに関するものではないことを明確にする必要があります。WinRT には .net フレームワークはなく、機能の小さなサブセットにすぎません。これが、すべての型を持っているわけではなく、もちろんすべてのメソッドやプロパティを持っているわけではないためです。
他の製品はありません。つまり、同じことを行う他のフレームワークやアセンブリはありません。メタデータのプロキシです。他の .Net Fx バージョンではありません。絶対にありません。ランタイムとプラットフォームの境界をまたぐ他のものとの間のブリッジを確立するために作成されたアセンブリです。将来のリリースでは、別の .net fx バージョンへの別の参照アセンブリが存在する可能性があるため、同じ名前のセットアップ FQN は完全に受け入れられると思います。名前とバージョンは、参照している.net fxアセンブリを知るためのショートカットであり、ところでアセンブリ名「互換レイヤー」を保持します