<runtime> 的 <assemblyIdentity> 元素和<bindingRedirect> 元素
1.<assemblyIdentity> 元素
包含关于该程序集的标识信息。
<assemblyIdentity
name="assembly name"
publicKeyToken="public key token"
culture="assembly culture"/>
下列各节描述了特性、子元素和父元素。
特性 |
说明 |
---|---|
name |
必需的特性。 程序集的名称 |
culture |
可选特性。 指定程序集的语言和国家/地区的字符串。 |
publicKeyToken |
可选特性。 指定程序集强名称的十六进制值。 |
processorArchitecture |
可选特性。 “x86”、“amd64”、“msil”或“ia64”值之一,为包含特定于处理器的代码的程序集指定处理器架构。 这些值不区分大小写。 如果该特性被赋予任何其他值,则整个 <assemblyIdentity> 元素将被忽略。 请参见ProcessorArchitecture。 |
processorArchitecture 特性
值 |
说明 |
---|---|
amd64 |
仅 64 位 AMD 处理器。 |
ia64 |
仅 64 位 Intel 处理器。 |
msil |
不特定于处理器和每字位数 |
x86 |
32 位 Intel 处理器,位于本机上或位于 64 位平台上的 Windows on Windows (WOW) 环境中。 |
子元素
无。
父元素
元素 |
说明 |
---|---|
assemblyBinding |
包含有关程序集版本重定向和程序集位置的信息。 |
configuration |
每个配置文件中的根元素,常用语言 runtime 和 .NET Framework 应用程序会使用这些文件。 |
dependentAssembly |
封装每个程序集的绑定策略和程序集位置。 为每个程序集使用一个 <dependentAssembly> 元素。 |
runtime |
包含程序集绑定和垃圾回收的相关信息。 |
备注
每个 <dependentAssembly>元素都必须有一个<assemblyIdentity> 子元素。
如果存在 processorArchitecture 特性,则 <assemblyIdentity> 元素仅应用于具有相应处理器架构的程序集。 如果不存在processorArchitecture 特性,则 <assemblyIdentity> 元素可以应用于具有任何处理器架构的程序集。
下面的示例演示一个配置文件用于两个名称相同的程序集,它们将两个不同的处理器架构作为目标,而且版本没有同步。 当应用程序在 x86 平台上执行时,第一个 <assemblyIdentity> 元素得到应用,而另一个被忽略。 如果应用程序在 x86 或 ia64 以外的其他平台上执行,两个元素都将被忽略。
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MyAssembly"
publicKeyToken="14a739be0244c389"
culture="neutral"
processorArchitecture="x86" />
<bindingRedirect oldVersion= "1.0.0.0"
newVersion="1.1.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="MyAssembly"
publicKeyToken="14a739be0244c389"
culture="neutral"
processorArchitecture="ia64" />
<bindingRedirect oldVersion="1.0.0.0"
newVersion="2.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
如果配置文件包含一个没有 processorArchitecture 特性的 <assemblyIdentity> 元素,并且不包含与平台匹配的元素,则将使用没有processorArchitecture 特性的元素。
示例
下面的示例说明如何提供有关程序集的信息。
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="myAssembly"
publicKeyToken="32ab4ba45e0a69a1"
culture="neutral" />
<!--Redirection and codeBase policy for myAssembly.-->
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
2.<bindingRedirect> 元素
将一个程序集版本重定向到另一个版本。
<bindingRedirect
oldVersion="existing assembly version"
newVersion="new assembly version"/>
下列各节描述了特性、子元素和父元素。
特性
特性 |
说明 |
---|---|
oldVersion |
必需的特性。 指定最初请求的程序集的版本。 程序集版本号的格式为 major.minor.build.revision。 该版本号的每个部分的有效值介于 0 和 65535 之间。 你还可以按下列格式指定版本范围: n.n.n.n - n.n.n.n |
newVersion |
必需的特性。 指定要用来取代最初请求的版本的程序集版本(格式为:n.n.n.n) 此值可以指定 oldVersion 之前的版本。 |
子元素
父元素
元素 |
说明 |
---|---|
assemblyBinding |
包含有关程序集版本重定向和程序集位置的信息。 |
configuration |
每个配置文件中的根元素,常用语言 runtime 和 .NET Framework 应用程序会使用这些文件。 |
dependentAssembly |
封装每个程序集的绑定策略和程序集位置。 为每个程序集使用一个 dependentAssembly 元素。 |
runtime |
包含程序集绑定和垃圾回收的相关信息。 |
备注
在针对具有强名称的程序集生成 .NET Framework 应用程序时,默认情况下,应用程序在运行时使用该版本的程序集,即使提供了新版本也是如此。 但是,你可以将应用程序配置为针对更新版本的程序集运行。 有关运行时如何使用这些文件来确定要使用的程序集版本的详细信息,请参见运行时如何定位程序集。
通过在一个 dependentAssembly 元素中包含多个 bindingRedirect 元素,你可以重定向多个程序集版本。 你还可从程序集的更新版本重定向到较旧版本。
应用程序配置文件中的显式程序集绑定重定向需要安全权限。 这适用于对 .NET Framework 程序集和来自第三方的程序集的重定向。 该权限可通过针对 SecurityPermission 类设置 BindingRedirects 标志来授予。 有关更多信息,请参见程序集绑定重定向安全权限。
示例
下面的示例演示如何将一个程序集版本重定向到另一个版本。
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="myAssembly"
publicKeyToken="32ab4ba45e0a69a1"
culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0"
newVersion="2.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
<runtime> 的 <assemblyIdentity> 元素和<bindingRedirect> 元素的更多相关文章
- jquery 元素控制(追加元素/追加内容)
参考网址:http://www.jquerycn.cn/a_5521 一.在元素内部/外部追加元素 append,prepend:添加到子元素 before,after:作为兄弟元素添加 html: ...
- Javascript JQuery获取当前元素的兄弟元素/上一个/下一个元素(转)
var chils= s.childNodes; //得到s的全部子节点 var par=s.parentNode; //得到s的父节点 var ns=s.nextSbiling; //获得s的下一个 ...
- JQuery 获取父级元素、同级元素、子元素等
例: <div> <div id="div_1">这是内容1</div> <div id="div_2">这是内 ...
- jquery获取父元素及祖先元素
parent是找当前元素的第一个父节点,parents是找当前元素的所有父节点 先说一下parent和parents的区别 从字面上不难看出 parent是指取得一个包含着所有匹配元素的唯一父元素的元 ...
- HTML5分节元素和语义元素
<base> <base> 元素为文档中的所有链接指定基地址.如果URL中含有协议名或"//"则会忽略 <base> 指定的基地址. <! ...
- php 获取数组第一个元素 以及最后一个元素 && 最后一个元素的键名
1. current() 函数返回数组中的当前元素的值. 每个数组中都有一个内部的指针指向它的"当前"元素,初始指向插入到数组中的第一个元素. end() - 将内部指针指向数组中 ...
- 当display=none时,元素和子元素高度为0的解决办法
在前端中为了某种需要,我们需要获取display=none的元素或者子元素的实际高度来进行某些处理,然而html对display=none的元素和子元素是不进行渲染的,如果我们没有规定这些元素的高度那 ...
- web前端之HTML的大框架(body元素与frameset元素)
web前端之HTML的大框架 body元素与frameset元素 对于从事html的人员来说,我们一般熟悉的框架是先声明html ,然后在<html>标签对里包着<head ...
- jquery选择器 之 获取父级元素、同级元素、子元素
jquery选择器 之 获取父级元素.同级元素.子元素 一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 <div id="par_div" ...
随机推荐
- 已解决 C# 调用 MySQLDriverCS 类库 报 vshost32-clr2.exe 已停止工作
这几天修改一个项目是用C# 通过调用 MySQLDriverCS.dll 类库来操作 MySql数据库, 调试的会发生以上错误(直接运行是正常的),刚开始以为是兼容性问题,吧此错误百度上一粘贴有的人说 ...
- EasyUI 1.3.1以下的组合验证
适用于EasyUI 1.3.1以下的, 1.3.2已经自带组合验证(如validType:['validator1','validator2']) $.extend($.fn.validatebox. ...
- 简化工作——我的bat文件
重启adb(radb.bat): @echo off call adb kill-server call adb start-server call adb remount push 一个apk(pu ...
- 0112.1——iOS开发之理解iOS中的MVC设计模式
模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已广泛应用于用户交互应用程 ...
- vs2013调试的时候卡顿
做毕业设计的时候忽然发现开始调试以后 会卡顿,这在前两天是没有的,纳尼,把我愁坏了. 首先以为程序或者vs出问题了.随后发现每次调试以后cpu急剧增加.随后就开始卡顿. 随后去网上搜索,发现两个答案. ...
- C# 导出Excel Aspose.Cells
public void ExportExcel() { Workbook workbook = new Workbook(); //工作簿 workbook.Worksheets.Clear(); w ...
- poi操作excel设置数据有效性
private void setDataValidationList(short firstRow,short endRow,short firstCol, short endCol,String d ...
- 【4】项目结构+基本的Tornado服务
项目地址: Blog 简单的tornado服务分支: simple 项目结构 创建对应的文件夹并测试一个最简单的功能 main.py #!/usr/bin/env python # coding:ut ...
- DeflateStream类
DeflateStream是另外一种压缩与解压缩流,使用方法与GZipStream类似,而且压缩之后的带下也差不多. 一.属性 BaseStream 获取对基础流的引用. CanRead 获取一个值 ...
- Linux系统编程(12)——shell基础
Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batch),用户事先写一个 ...