Поделиться через


ProvideBindingPathAttribute - класс

Этот атрибут позволяет сборки в вашем Visual Studio Пакет или модуль для использования другими пакетами и расширениями.Он добавляет каталог, где устанавливается на пакет Visual Studio поиска сборок список, который используется для разрешения ссылок на сборку.

Иерархия наследования

System.Object
  System.Attribute
    Microsoft.VisualStudio.Shell.RegistrationAttribute
      Microsoft.VisualStudio.Modeling.Shell.ProvideBindingPathAttribute

Пространство имен:  Microsoft.VisualStudio.Modeling.Shell
Сборка:  Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0 (в Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0.dll)

Синтаксис

'Декларация
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := True)> _
Public NotInheritable Class ProvideBindingPathAttribute _
    Inherits RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
public sealed class ProvideBindingPathAttribute : RegistrationAttribute

Тип ProvideBindingPathAttribute предоставляет следующие члены.

Конструкторы

  Имя Описание
Открытый метод ProvideBindingPathAttribute

В начало страницы

Свойства

  Имя Описание
Открытое свойство SubPath Необязательный субконтур, которое необходимо задать после $PackageFolder$.Это должно использоваться, если требуется проверка сборки, которые находятся в другом каталоге, чем файл pkgdef.
Открытое свойство TypeId (Унаследовано от RegistrationAttribute.)

В начало страницы

Методы

  Имя Описание
Открытый метод Equals Инфраструктура. Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute.)
Открытый метод GetHashCode Возвращает хэш-код для данного экземпляра. (Унаследовано от Attribute.)
Открытый метод GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
Открытый метод IsDefaultAttribute При переопределении в производном классе показывает, является ли значение данного экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute.)
Открытый метод Match При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту. (Унаследовано от Attribute.)
Открытый метод Register Регистрация компонентов путь (или при необходимости sub-путь компонентов пути) в качестве дополнительного пути этот диспетчер сборок в пределах Visual Studio поскольку зондом при попытке разрешения сборки.Вызывается, когда пакет удаляется. (Переопределяет RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).)
Открытый метод ToString Возвращает строку, представляющую текущий объект. (Унаследовано от Object.)
Открытый метод Unregister Регистрацию путь компонента как путь привязки.Вызывается при удалении пакет. (Переопределяет RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).)

В начало страницы

Явные реализации интерфейса

  Имя Описание
Явная реализация интерфейсаЗакрытый метод _Attribute.GetIDsOfNames Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.GetTypeInfo Возвращает сведения о типе объекта, которые могут использоваться для получения сведений о типе интерфейса. (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.GetTypeInfoCount Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1). (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.Invoke Предоставляет доступ к открытым свойствам и методам объекта. (Унаследовано от Attribute.)

В начало страницы

Заметки

ПримечаниеПримечание

Это применимо к сведения Visual Studio 2010.Альтернативный метод может быть предоставлен в последующих выпусках.

Если требуется сборки в пакете или модуле быть видимыми другим расширениям, необходимо применение этого атрибута к классу пакета или в данной сборке.Примеры.

[ProvideBindingPath] 
public class MyVsPackage : Microsoft.VisualStudio.Shell.Package 
{ ... }

При использовании визуализация и модели SDK, чтобы создать доменный язык (DSL), то атрибут применяется автоматически in DslPackage\Package.cs.

Если не построения DSL, включите следующий файл в проекте.

%VSSDKInstallDir%\VisualStudioIntegration\Common\Source\CSharp\RegistrationAttributes\ProvideBindingPathAttribute.cs

Если сборки конкретного пакета в sub-каталоге по отношению к .pkgdef файл можно использовать этот вариант:

[ProvideBindingPath(SubPath="SubFolder1")] 
public class MyPackage : Microsoft.VisualStudio.Shell.Package 
{ ... }

Можно использовать несколько ProvideBindingPath атрибут если необходимо указать несколько каталогов.

Предупреждающее замечаниеВнимание

Поскольку этот атрибут расширяет список папок, где Visual Studio выполняет поиск сборки, можно заметить удаление в производительности при установке многие пакеты, имеющие данный атрибут.

Привязка работает как атрибут пути пакета

Этот атрибут генерирует запись в пакете .pkgdef файл, который можно найти в папке построения.Это, в свою очередь, создает записи в реестре, когда пакет устанавливается на целевом компьютере.Запись реестра предоставляет путь, который должен зондироваться выбранного для сборок, когда другие сборки загружаются.

Например, .pkgdef запись аналогично этому:

[$RootKey$\BindingPaths\ваше GUID пакета]"$PackageFolder$"=""

Если пакет устанавливается на конечном компьютере, запись добавляется в реестре HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0_Config\BindingPaths\ваше GUID пакета.Запись содержит строковый атрибут, который указывает папку установки пакета.

Потокобезопасность

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

См. также

Ссылки

Microsoft.VisualStudio.Modeling.Shell - пространство имен

Package

Другие ресурсы

Развертывание решений на доменных языках