IVsDataSourceSpecializer.CreateObject (Método)
Crea una instancia de la entidad especificada de soporte de DDEX implementada por el proveedor de DDEX para un origen de datos específico de DDEX.
Espacio de nombres: Microsoft.VisualStudio.Data.Core
Ensamblado: Microsoft.VisualStudio.Data.Core (en Microsoft.VisualStudio.Data.Core.dll)
Sintaxis
'Declaración
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
Parámetros
source
Tipo: GuidUn identificador de origen de datos de DDEX.
objType
Tipo: TypeUn tipo de entidad de soporte de DDEX.
Valor devuelto
Tipo: Object
Una instancia de la entidad especificada de soporte de DDEX implementada por el proveedor de DDEX para un origen de datos específico de DDEX, si el proveedor de DDEX lo admite; si no, nullreferencia null (Nothing en Visual Basic).
Excepciones
Excepción | Condición |
---|---|
ArgumentNullException | El valor del parámetro objType es nullreferencia null (Nothing en Visual Basic). |
Comentarios
Este método permite que un proveedor de DDEX crear implementaciones diferentes de una entidad de soporte de DDEX, dependiendo del origen de datos de DDEX se está destinado actualmente por el cliente de DDEX. Un ejemplo de esto sucede con la entidad de compatibilidad de IVsDataConnectionUIControl , que tiene dos implementaciones del proveedor de Microsoft SQL Server DDEX: uno para conectarse a SQL Server mediante un nombre de servidor (el origen de datos de Microsoft SQL Server), y otro para conectarse a SQL Server Express edición mediante un nombre de archivo de base de datos (el origen de datos del archivo de base de datos de Microsoft SQL Server).
Ejemplos
El código siguiente muestra cómo implementar este método para crear una de las entidades admiten estándar para dos orígenes de datos diferentes. El ejemplo hereda de la clase de DataSourceSpecializer de marco, que proporciona una implementación predeterminada de los otros métodos de la interfaz de 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
{
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.