IVsDataSourceSpecializer.CreateObject - метод
Создает экземпляр заданной сущности поддержки DDEX, которая реализуется поставщиком DDEX для источника данных DDEX.
Пространство имен: Microsoft.VisualStudio.Data.Core
Сборка: Microsoft.VisualStudio.Data.Core (в Microsoft.VisualStudio.Data.Core.dll)
Синтаксис
'Декларация
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
Параметры
- source
Тип: System.Guid
Идентификатор источника данных DDEX.
- objType
Тип: System.Type
Тип сущности поддержки DDEX.
Возвращаемое значение
Тип: System.Object
Экземпляр заданной сущности поддержки DDEX, которая реализуется поставщиком DDEX для источника данных DDEX, если поставщик поддерживает DDEX него; в противном случае – значение nullссылка NULL (Nothing в Visual Basic).
Исключения
Исключение | Условие |
---|---|
ArgumentNullException | Значение параметра objType — nullссылка NULL (Nothing в Visual Basic). |
Заметки
Этот метод позволяет поставщику DDEX, чтобы создать различные реализации поддержки DDEX сущности в зависимости от которой источник данных DDEX в настоящее время пристреливается клиентом DDEX.Примером этого происходит с сущностью поддержки IVsDataConnectionUIControl, которая содержит 2 реализации поставщика Microsoft SQL Server: DDEX одно для подключения к SQL Server с помощью имени сервера (источника данных Microsoft SQL Server), и один для подключения к SQL Server, экспресс-выпуск с помощью имени файла базы данных (источника данных файла базы данных Microsoft SQL Server).
Примеры
В следующем примере кода показано, как реализовать этот метод, чтобы создать одну из стандартных сущностей поддержки для 2 разных источников данных.Пример наследует от класса DataSourceSpecializer платформы, который предоставляет реализацию по умолчанию для остальных методов в интерфейсе 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
{
}
Безопасность платформы .NET Framework
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.