Classe ProvideBindingPathAttribute
Questo attributo consente agli assembly in Visual Studio pacchetto o estensione da utilizzare da altri pacchetti e estensioni.Aggiunge la directory in cui il pacchetto viene installato a Visual Studio sondaggio elenco, utilizzato per risolvere i riferimenti all'assembly.
Gerarchia di ereditarietà
System.Object
System.Attribute
Microsoft.VisualStudio.Shell.RegistrationAttribute
Microsoft.VisualStudio.Modeling.Shell.ProvideBindingPathAttribute
Spazio dei nomi: Microsoft.VisualStudio.Modeling.Shell
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0 (in Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0.dll)
Sintassi
'Dichiarazione
<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
Il tipo ProvideBindingPathAttribute espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
![]() |
ProvideBindingPathAttribute |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
![]() |
SubPath | Un percorso secondario facoltativo a dopo $PackageFolder$.Dovrebbe essere utilizzata se gli assembly da sondare si trovano in una directory diversa rispetto al file di pkgdef. |
![]() |
TypeId | (Ereditato da RegistrationAttribute) |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
![]() |
Equals | Infrastruttura. Restituisce un valore che indica se l'istanza è uguale a un oggetto specificato. (Ereditato da Attribute) |
![]() |
GetHashCode | Restituisce il codice hash per l'istanza. (Ereditato da Attribute) |
![]() |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
![]() |
IsDefaultAttribute | Una volta sottoposto a override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
![]() |
Match | Una volta sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
![]() |
Register | Registrare il percorso componente (o facoltativamente è presente un sottopercorso del percorso componente) come percorso aggiuntivo che l'amministratore dell'assembly in Visual Studio sonderà quando si tenta di risolvere gli assembly.Chiamato quando il pacchetto viene installato. (Esegue l'override di RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext)). |
![]() |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
![]() |
Unregister | Annullare la registrazione del percorso componente come percorso di associazione.Chiamato quando il pacchetto viene disinstallato. (Esegue l'override di RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext)). |
In alto
Implementazioni esplicite dell'interfaccia
Nome | Descrizione | |
---|---|---|
![]() ![]() |
_Attribute.GetIDsOfNames | Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) |
![]() ![]() |
_Attribute.GetTypeInfo | Recupera le informazioni sui tipi per un oggetto, che può essere utilizzato per ottenere informazioni sul tipo per un'interfaccia. (Ereditato da Attribute) |
![]() ![]() |
_Attribute.GetTypeInfoCount | Recupera il numero di interfacce di informazioni sui tipi che un oggetto garantisce (0 o 1). (Ereditato da Attribute) |
![]() ![]() |
_Attribute.Invoke | Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |
In alto
Note
[!NOTA]
Queste informazioni sono applicabili a Visual Studio 2010.Un metodo alternativo potrebbe essere fornito in versioni successive.
Se si desidera che gli assembly nel pacchetto o nell'estensione per essere visibile ad altre estensioni, è necessario applicare questo attributo alla classe del pacchetto o all'assembly.Ad esempio:
[ProvideBindingPath]
public class MyVsPackage : Microsoft.VisualStudio.Shell.Package
{ ... }
Se si utilizza l'sdk di visualizzazione e modellazione per creare un (DSL) linguaggio specifico di dominio, l'attributo viene applicato automaticamente in DslPackage\Package.cs.
Se non si sta compilando un linguaggio specifico di dominio, includere il seguente file nel progetto:
%VSSDKInstallDir%\VisualStudioIntegration\Common\Source\CSharp\RegistrationAttributes\ProvideBindingPathAttribute.cs
Se gli assembly del pacchetto sono in una sottodirectory relativo a .pkgdef file, è possibile utilizzare questa variant:
[ProvideBindingPath(SubPath="SubFolder1")]
public class MyPackage : Microsoft.VisualStudio.Shell.Package
{ ... }
È possibile utilizzare più di uno ProvideBindingPath attributo se si desidera specificare diverse directory.
![]() |
---|
Poiché questo attributo consente di estendere l'elenco delle cartelle in cui Visual Studio cerca gli assembly, è possibile notare un calo delle prestazioni se si installa molti pacchetti che hanno questo attributo. |
Il funzionamento di associazione di attributi PATH del pacchetto
Questo attributo viene generata una voce nel pacchetto .pkgdef file, disponibili nella cartella di compilazione.Questa operazione consente a sua volta crea una voce nel Registro di sistema quando il pacchetto viene installato nel computer di destinazione.La voce del Registro di sistema viene fornito un percorso che deve essere sondatoe per gli assembly del candidato quando gli altri assembly vengono caricati.
Ad esempio, .pkgdef la voce è simile alla seguente:
[$RootKey$\BindingPaths\GUID del package]"$PackageFolder$"=""
Quando il pacchetto viene installato nel computer di destinazione, una voce del Registro di sistema viene aggiunto in HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0_Config\BindingPaths\GUID del package.La voce comprende un attributo di stringa che indica la cartella di installazione del pacchetto.
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Vedere anche
Riferimenti
Spazio dei nomi Microsoft.VisualStudio.Modeling.Shell
Altre risorse
Distribuzione di soluzioni per un linguaggio specifico di dominio