方法 : Web サイトに .NET コンポーネントまたは COM コンポーネントへの参照を追加する

更新 : 2007 年 11 月

グローバル アセンブリ キャッシュ (GAC : Global Assembly Cache) 内の .NET コンポーネントまたはコンピュータ上に登録されている COM コンポーネントを参照できます。GAC ではなくハード ドライブ上にあるコンポーネントも参照できます。コンポーネントを参照することにより、コード内でそのコンポーネントを使用できるようになります。

hsy826az.alert_note(ja-jp,VS.90).gifメモ :

GAC に登録されているカスタム コンポーネントへの参照を含むアプリケーションを配置した場合、そのコンポーネントはアプリケーションと共には配置されません。以前のバージョンの Visual Studio.NET では、参照に対して ローカル コピー プロパティを設定することによって、アセンブリも配置できるようになっていました。ASP.NET 2.0 では、アプリケーションと共にアセンブリを配置するには、そのアプリケーションの Bin フォルダにアセンブリを手動で追加する必要があります。このようにすることによって、よく知らないカスタム コードを公開するリスクを軽減できます。詳細については、「アセンブリとグローバル アセンブリ キャッシュの使用」および「配置とグローバル アセンブリ キャッシュ」を参照してください。

登録済み COM コンポーネントへの参照を追加するには

  1. [Web サイト] メニューの [参照の追加] をクリックし、[COM] タブをクリックします。

  2. COM コンポーネントの一覧から目的のコンポーネントを選択し、[OK] をクリックします。

    Visual Basic により、相互運用機能アセンブリが自動的に作成されます。このアセンブリは、COM 型を定義するメタデータを含み、.NET コンパイラが COM オブジェクトへの呼び出しを解決できるようにする特殊な .NET アセンブリです。

    目的のコンポーネントがない場合、[参照] タブをクリックし、ハード ドライブからコンポーネント ファイルを探します。

.NET Framework に登録されている .NET コンポーネントの参照を追加するには

  1. [Web サイト] メニューの [参照の追加] をクリックし、ダイアログ ボックスの [.NET] タブをクリックします。

  2. .NET コンポーネントの一覧から目的のコンポーネントを選択し、[OK] をクリックします。

    目的のコンポーネントがない場合、[参照] タブをクリックし、ハード ドライブからアセンブリ ファイルを探します。

コンポーネントの参照

プロジェクトにコンポーネントへの参照を追加したら、コード内でそのコンポーネントを使用できるようになります。

参照されたコンポーネントを使用するには

  • Imports (Visual Basic) ステートメントまたは using (C#) ステートメントを、参照の名前空間を識別するクラスまたはモジュールの一番上に追加します。詳細については、「Imports ステートメント (.NET 名前空間および型)」または「using ステートメント (C# リファレンス)」を参照してください。

    その後、名前を完全修飾することなく (メンバ名の前に名前空間名を付けることなく)、メンバ名を使用できるようになります。たとえば、System.Web 名前空間に参照を追加する際、System.Web.UI.WebControls 名前空間に Imports (Visual Basic) ステートメントまたは using (C#) ステートメントを含めると、SiteMapNodeItem クラスを、次の例のように完全修飾名を使用しないで参照できます。

    [Visual Basic]

    Imports System.Web.UI.WebControls
    Public Class SampleClass
        Dim smni As SiteMapNodeItem = _
            New SiteMapNodeItem(0, SiteMapNodeItemType.Parent)
    End Class
    
    using System.Web.UI.WebControls;
    public class SampleClass
    {
        SiteMapNodeItem smni = new 
            SiteMapNodeItem(0, SiteMapNodeItemType.Parent);
    }
    

    Visual Basic .NET Import ステートメントまたは C# using ステートメントを System.Web.UI.WebControls 名前空間に対して使用しなかった場合、SiteMapNodeItem クラスを参照することはできますが、次の例にように完全修飾名を使用する必要があります。

    [Visual Basic]

    Public Class SampleClass
        Dim smni As System.Web.UI.WebControls.SiteMapNodeItem = _
            New System.Web.UI.WebControls.SiteMapNodeItem(0, _
            System.Web.UI.WebControls.SiteMapNodeItemType.Parent)
    End Class
    
    public class SampleClass
    {
        System.Web.UI.WebControls.SiteMapNodeItem smni = 
            new System.Web.UI.WebControls.SiteMapNodeItem(0, 
            System.Web.UI.WebControls.SiteMapNodeItemType.Parent);
    }
    

参照

処理手順

方法 : Visual Studio で参照を追加または削除する (Visual Basic)

方法 : Visual Basic から COM オブジェクトを参照する

その他の技術情報

COM 相互運用