IVsDataClientObject<T> - интерфейс
Представляет объект программы-оболочки клиента, который взаимодействует с основным объектом поставщика.
Пространство имен: Microsoft.VisualStudio.Data.Core
Сборка: Microsoft.VisualStudio.Data.Core (в Microsoft.VisualStudio.Data.Core.dll)
Синтаксис
'Декларация
Public Interface IVsDataClientObject(Of T As Class)
public interface IVsDataClientObject<T>
where T : class
generic<typename T>
where T : ref class
public interface class IVsDataClientObject
type IVsDataClientObject<'T when 'T : not struct> = interface end
JScript не поддерживает универсальные типы и методы.
Параметры типа
- T
Тип параметра.
Тип IVsDataClientObject<T> предоставляет следующие члены.
Методы
Имя | Описание | |
---|---|---|
![]() |
Initialize | Инициализирует объект клиента с базовой реализацией объекта поставщика. |
В начало страницы
Заметки
Когда клиент вызывает среду выполнения DDEX DDEX, чтобы создать экземпляр сущности для конкретного поставщика поддержки DDEX объект поставщика обычно создание и возвращается непосредственно клиенту.В этом случае клиент имеет непосредственно дескриптор для реализации поставщика.В некоторых случаях владелец сущности поддержки DDEX может потребоваться указать дополнительные или измененную расширения функциональности сущности поддержки при взаимодействии с клиентом, чтобы соответствовать ожиданиям клиента, не добавляя дополнительные тягота на писателе поставщика.
Самым распространенным примером этого требования поступает в форме службы подключения DDEX как сущность поддержки IVsDataCommand.Одна цель IVsDataConnection, объект соединения DDEX, свернуть издержки выполнение на стороне клиента обеспечила, что соединение в настоящий момент открыт и не используется другим клиентом, но одновременно исключила должны относиться о следующих проблемах на стороне поставщика.Поэтому данному служба подключения может иметь клиентского объекта, связанного с ним, что выполняет дополнительную логику, предоставляя соединение открыто и правильно совместно использовано среди множества клиентов.Эта реализация создает программу-оболочку основной объект поставщика и автоматически предоставляется клиенту средой выполнения DDEX.
Сущности, которые поддерживают DDEX предназначен иметь получение программы-оболочки DDEX объект среды выполнения клиента при создании сущности поддержки поставщика включать атрибут DataClientObjectAttribute на типе для представления сущности.Этот атрибут определяет класс-оболочку, которая реализует этот интерфейс.При запросе клиентом, среда выполнения DDEX вначале создается экземпляр базового объекта поставщика, а затем создает экземпляр класс-оболочки.Цель этого интерфейса указать метод для инициализации объекта программы-оболочки с основным объектом поставщика.
Интерфейс IVsDataClientObject<T> основной интерес к расширителям платформы DDEX, т е разделах создать дополнительные сущности технических служб DDEX.
Примеры
В следующем коде показано определение вымышленной сущности поддержки, которая объявляет атрибут клиентского объекта.Это определение следуют реализации клиентского объекта, который добавляет простое ведение журнала вызовов сущности поддержки.
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
using Microsoft.VisualStudio.Data.Core;
[DataClientObject("1520C77F-09AF-40b4-B1FE-53C30A177C59")]
public interface IVsDataSupportEntity
{
void DoSomething();
}
[Guid("1520C77F-09AF-40b4-B1FE-53C30A177C59")]
internal class ClientSupportEntity : IVsDataSupportEntity,
IVsDataClientObject<IVsDataSupportEntity>
{
private IVsDataSupportEntity _providerObj;
public void Initialize(IVsDataSupportEntity providerObj)
{
if (providerObj == null)
{
throw new ArgumentNullException("providerObj");
}
_providerObj = providerObj;
}
public void DoSomething()
{
Trace.WriteLine("DoSomething started.");
_providerObj.DoSomething();
Trace.WriteLine("DoSomething finished.");
}
}