Condividi tramite


Metodo IVsDataSourceSpecializer.CreateObject

Crea un'istanza dell'entità specificata di supporto di DDEX implementato dal provider di DDEX per un'origine dati specifica di DDEX.

Spazio dei nomi:  Microsoft.VisualStudio.Data.Core
Assembly:  Microsoft.VisualStudio.Data.Core (in Microsoft.VisualStudio.Data.Core.dll)

Sintassi

'Dichiarazione
Function CreateObject ( _
    source As Guid, _
    objType As Type _
) As Object
Object CreateObject(
    Guid source,
    Type objType
)
Object^ CreateObject(
    Guid source, 
    Type^ objType
)
abstract CreateObject : 
        source:Guid * 
        objType:Type -> Object
function CreateObject(
    source : Guid, 
    objType : Type
) : Object

Parametri

  • source
    Tipo: Guid

    Un identificatore di origine dati di DDEX.

  • objType
    Tipo: Type

    Un tipo di entità di supporto di DDEX.

Valore restituito

Tipo: Object
Un'istanza dell'entità specificata di supporto di DDEX implementato dal provider di DDEX per un'origine dati specifica di DDEX, se il provider di DDEX la supporta; in caso contrario, nullriferimento null (Nothing in Visual Basic).

Eccezioni

Eccezione Condizione
ArgumentNullException

Il parametro objType è nullriferimento null (Nothing in Visual Basic).

Note

Questo metodo consente a un provider di DDEX creare le diverse implementazioni di un'entità di supporto di DDEX, a seconda dell'origine dati di DDEX attualmente al client di DDEX. Un esempio di questo si verifica con l'entità di supporto IVsDataConnectionUIControl, che dispone di due implementazioni nel provider Microsoft SQL Server DDEX: uno per la connessione a SQL Server utilizzando un nome di server (l'origine dati di Microsoft SQL Server) e uno per la connessione a SQL Server Express Edition utilizzando un nome file di database (l'origine dati del file di database di Microsoft SQL Server.

Esempi

Il codice seguente viene illustrato come implementare questo metodo per creare una delle entità standard di supporto per due diverse origini dati. L'esempio eredita dalla classe DataSourceSpecializer del framework, che fornisce un'implementazione predefinita degli altri metodi dell'interfaccia IVsDataSourceSpecializer.

C#

using System;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services.SupportEntities;
using Microsoft.VisualStudio.Data.Framework;

public class MySourceSpecializer2 : DataSourceSpecializer
{
    private static readonly Guid s_dataSource1 =
        new Guid("F24C1C71-D9AE-47ec-80C6-91B864201D72");
    private static readonly Guid s_dataSource2 =
        new Guid("194DD1D2-19A8-4493-A70B-F83C141D29E5");

    public override object CreateObject(Guid source, Type objType)
    {
        if (source == s_dataSource1)
        {
            if (objType == typeof(IVsDataConnectionUIControl))
            {
                return new MyConnectionUIControl1();
            }
        }
        if (source == s_dataSource2)
        {
            if (objType == typeof(IVsDataConnectionUIControl))
            {
                return new MyConnectionUIControl2();
            }
        }
        return null;
    }
}

internal class MyConnectionUIControl1 : DataConnectionUIControl
{
}

internal class MyConnectionUIControl2 : DataConnectionUIControl
{
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

IVsDataSourceSpecializer Interfaccia

Spazio dei nomi Microsoft.VisualStudio.Data.Core