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 | 注册组件路径 (或选择组件路径的子路径) 作为 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自动应用。
如果不生成 DSL,请包括以下文件在项目:
%VSSDKInstallDir%\VisualStudioIntegration\Common\Source\CSharp\RegistrationAttributes\ProvideBindingPathAttribute.cs
如果包的程序集在子目录相对 .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(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
请参见
参考
Microsoft.VisualStudio.Modeling.Shell 命名空间