ProvideBindingPathAttribute-Klasse
Dieses Attribut ermöglicht, dass die Assembly in Ihrem Visual Studio -Paket oder Ihrer Erweiterung von anderen Paketen und Erweiterungen verwendet werden. Fügt das Verzeichnis hinzu, in dem das Paket für die Visual Studio-Prüfliste installiert ist, die verwendet wird, um Assemblyverweise aufzulösen.
Vererbungshierarchie
System.Object
System.Attribute
Microsoft.VisualStudio.Shell.RegistrationAttribute
Microsoft.VisualStudio.Modeling.Shell.ProvideBindingPathAttribute
Namespace: Microsoft.VisualStudio.Modeling.Shell
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0.dll)
Syntax
'Declaration
<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
Der ProvideBindingPathAttribute-Typ macht die folgenden Member verfügbar.
Konstruktoren
Name | Beschreibung | |
---|---|---|
![]() |
ProvideBindingPathAttribute |
Zum Seitenanfang
Eigenschaften
Name | Beschreibung | |
---|---|---|
![]() |
SubPath | Ein optionaler SubPath, der nach dem $PackageFolder$ festgelegt wird.Dies sollte verwendet werden, wenn sich die zu überprüfenden Assemblys in einem anderen Verzeichnis als der pkgdef-Datei befinden. |
![]() |
TypeId | (Von RegistrationAttribute geerbt.) |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
![]() |
Equals | Infrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.) |
![]() |
GetHashCode | Gibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.) |
![]() |
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) |
![]() |
IsDefaultAttribute | Beim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.) |
![]() |
Match | Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.) |
![]() |
Register | Registrieren von einem Komponentenpfad (oder optional von einem Unterpfad des Komponentenpfads) als zusätzlichen Pfad, den der Assembly-Manager in Visual Studio beim Versuch, Assemblys aufzulösen, testen wird.Wird aufgerufen, wenn das Paket installiert wird. (Überschreibt RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).) |
![]() |
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
![]() |
Unregister | Heben Sie die Registrierung für den Komponentenpfad als bindenden Pfad auf.Wird aufgerufen, wenn das Paket deinstalliert wird. (Überschreibt RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).) |
Zum Seitenanfang
Explizite Schnittstellen implementierungen
Name | Beschreibung | |
---|---|---|
![]() ![]() |
_Attribute.GetIDsOfNames | Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.) |
![]() ![]() |
_Attribute.GetTypeInfo | Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.) |
![]() ![]() |
_Attribute.GetTypeInfoCount | Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.) |
![]() ![]() |
_Attribute.Invoke | Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.) |
Zum Seitenanfang
Hinweise
Hinweis
Diese Informationen sind für Visual Studio 2010 auf.Eine alternative Methode wird in späteren Versionen bereitgestellt werden.
Wenn Sie die Assemblys im Paket oder in Erweiterung von anderen Erweiterungen sichtbar sein soll, sollten Sie dieses Attribut in der Paketklasse oder auf die Assembly anwenden. Beispiel:
[ProvideBindingPath]
public class MyVsPackage : Microsoft.VisualStudio.Shell.Package
{ ... }
Wenn des Visualisierungs- und Modellierungs-SDKs verwenden, um eine domänenspezifische Sprache (DSL) erstellen, wird das Attribut automatisch in der DslPackage\Package.cs angewendet.
Wenn Sie kein DSL erstellen, die folgende Datei in das Projekt ein:
%VSSDKInstallDir%\VisualStudioIntegration\Common\Source\CSharp\RegistrationAttributes\ProvideBindingPathAttribute.cs
Wenn die Assemblys des Pakets in einem Unterverzeichnis relativ zur .pkgdef Datei sind, können Sie dieser Variante verwenden:
[ProvideBindingPath(SubPath="SubFolder1")]
public class MyPackage : Microsoft.VisualStudio.Shell.Package
{ ... }
Sie können mehr als ein ProvideBindingPath-Attribut verwenden, wenn Sie einige Verzeichnisse angeben möchten.
Warnung
Da dieses Attribut die Liste von Ordnern erweitert, in denen Visual Studio Assemblys sucht, werden Sie das Ablegen in der Leistung, wenn Sie zahlreiche Pakete installieren, die dieses Attribut stammen.
Wie das Paket-verbindliche path-Attribut funktioniert
Dieses Attribut generiert einen Eintrag in Datei .pkgdef des Pakets, die im Buildordner suchen können. Dies erstellt wiederum einen Eintrag in der Registrierung, wenn das Paket auf einem Zielcomputer installiert ist. Der Registrierungseintrag stellt einen Pfad, der für entsprechenden Assemblys überprüft werden sollte, wenn andere Assemblys geladen werden.
Beispielsweise ist der .pkgdef Eintrag wie folgt:
[$RootKey$\BindingPaths\die GUID Paket]"$PackageFolder$"=""
Wenn das Paket auf einem Zielcomputer installiert ist, wird ein Registrierungseintrag in HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0_Config\BindingPaths\die GUID Paket hinzugefügt. Der Eintrag enthält ein Zeichenfolgenattribut, das dem Installationsordner des Pakets.
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Siehe auch
Referenz
Microsoft.VisualStudio.Modeling.Shell-Namespace