The .NET Framework can be hosted by unmanaged components that load the common language runtime into their processes and initiate the execution of managed code, thereby creating a software environment that can exploit both managed and unmanaged features. The .NET Framework not only provides several runtime hosts, but also supports the development of third-party runtime hosts.
For example, ASP.NET hosts the runtime to provide a scalable, server-side environment for managed code. ASP.NET works directly with the runtime to enable ASP.NET applications and XML Web services, both of which are discussed later in this topic.
NET Frameworkは、共通言語ランタイムをそれらのプロセスに積み込んで、管理コードの実行を開始する非管理構成要素によりホストするができ、その結果、管理および非管理機能をともに生かすソフトウェア環境をつくります。.NET Frameworkは、いくつかのランタイム・ホストを提供するだけでなく、第3者ランタイム・ホストの開発も支援します。
たとえば、Asp.NETは、ランタイムをホストし、管理コードのための拡張可能なサーバー側の環境を提供します。Asp.NETは、ランタイムに直接働きかけ、ASP.NETアプリケーションやXMLウェブ・サービスを使用可能にします。これら2者については本トピック中でまた話します。
Internet Explorer is an example of an unmanaged application that hosts the runtime (in the form of a MIME type extension). Using Internet Explorer to host the runtime enables you to embed managed components or Windows Forms controls in HTML documents. Hosting the runtime in this way makes managed mobile code possible, but with significant improvements that only managed code can offer, such as semi-trusted execution and isolated file storage.
Internet Explorerはランタイムをホストする管理されていないアプリケーションの一例です。(MIME拡張の形で)Internet Explorerにランタイムをホストさせることで、HTML文書に管理コンポーネントやWindowsフォームコントロールを埋め込むことが出来ます。
このようにランタイムをホスティングすることで、可搬性のあるコードを、管理されたコードの利点、例えば半信頼でのコード実行や、隔離データ保管といった利点を活かしたまま実現することが出来ます。