优化附属程序集的探测。
<配置>
<运行时>
<relativeBindForResources>
Syntax
<relativeBindForResources
enabled="true|false" />
特性和元素
下列各节描述了特性、子元素和父元素。
特性
| Attribute | Description |
|---|---|
enabled |
必需属性。 指定公共语言运行时是否优化附属程序集的探测。 |
enabled Attribute
| 价值 | Description |
|---|---|
false |
运行时不会优化附属程序集的探测。 这是默认值。 |
true |
运行时优化附属程序集的探测。 |
子元素
没有。
父元素
| 元素 | Description |
|---|---|
configuration |
公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。 |
runtime |
包含有关运行时初始化选项的信息。 |
注解
通常,资源管理器会探测资源,如 包和部署资源 主题中所述。 这意味着,当资源管理器探测特定本地化版本的资源时,它可能会查找全局程序集缓存,查找应用程序代码库中特定于区域性的文件夹,查询 Windows Installer 以获取附属程序集,并引发 AppDomain.AssemblyResolve 事件。 该 <relativeBindForResources> 元素优化资源管理器探测附属程序集的方式。 在以下条件下探测资源时,它可以提高性能:
- 当附属程序集部署在代码程序集所在的同一位置时。 换句话说,如果代码程序集安装在全局程序集缓存中,则还必须在其中安装附属程序集。 如果代码程序集安装在应用程序的代码库中,则附属程序集还必须安装在代码库的区域性特定的文件夹中。
- 当 Windows Installer 未使用或仅用于按需安装附属程序集时。
- 当应用程序代码不处理 AppDomain.AssemblyResolve 事件时。
设置 enabled 元素的属性 <relativeBindForResources> 以 true 优化 Resource Manager 针对附属程序集的探测,如下所示:
- 它使用父代码程序集的位置来探测附属程序集。
- 它不会查询 Windows Installer 中的附属程序集。
- 它不会引发 AppDomain.AssemblyResolve 事件。