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


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.12.0 (в Microsoft.VisualStudio.Modeling.Sdk.Shell.12.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 Необязательный SubPath, которое необходимо задать после $PackageFolder$.Этот параметр следует использовать, если требуется проверить сборки, которые находятся в другом каталоге, отличном от каталога файла pkgdef.
Открытое свойство TypeId (Унаследовано от RegistrationAttribute.)

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

Методы

  Имя Описание
Открытый метод Equals Инфраструктура. Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute.)
Открытый метод GetHashCode Возвращает хэш-код для данного экземпляра. (Унаследовано от Attribute.)
Открытый метод GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
Открытый метод IsDefaultAttribute При переопределении в производном классе показывает, является ли значение данного экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute.)
Открытый метод Match При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту. (Унаследовано от Attribute.)
Открытый метод Register Регистрация пути компонентов (или, при необходимости, подпути пути компонентов) в качестве дополнительного пути, который будет зондировать диспетчер сборок в 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) (DSL), атрибут автоматически применяется в DslPackage\Package.cs.

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

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

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

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

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

Предупреждение

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

Как атрибут binding.path пакета работает

Этот атрибут создает запись в файле .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

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

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